@zextras/carbonio-shell-ui 0.4.38 → 0.4.39
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.
- package/dist/CHANGELOG.md +8 -0
- package/dist/PKGBUILD +7 -7
- package/dist/commit +1 -1
- package/dist/component.json +3 -3
- package/dist/i18n/en.json +1 -0
- package/dist/i18n/pl.json +1 -1
- package/dist/index.html +3 -3
- package/dist/{src_boot_bootstrapper_tsx-node_modules_moment_locale_sync_recursive_.1bbb2842.chunk.js → src_boot_bootstrapper_tsx-node_modules_moment_locale_sync_recursive_.b732e9fa.chunk.js} +95 -108
- package/dist/src_boot_bootstrapper_tsx-node_modules_moment_locale_sync_recursive_.b732e9fa.chunk.js.map +1 -0
- package/dist/{src_workers_folder_ts.e04cc550.chunk.js → src_workers_folder_ts.fe1dc29f.chunk.js} +2 -2
- package/dist/{src_workers_folder_ts.e04cc550.chunk.js.map → src_workers_folder_ts.fe1dc29f.chunk.js.map} +1 -1
- package/dist/{src_workers_tag_ts.c85140ba.chunk.js → src_workers_tag_ts.07ecb5ff.chunk.js} +2 -2
- package/dist/{src_workers_tag_ts.c85140ba.chunk.js.map → src_workers_tag_ts.07ecb5ff.chunk.js.map} +1 -1
- package/dist/{style.a1281a7a.css → style.f89661d0.css} +29 -29
- package/dist/{style.a1281a7a.css.map → style.f89661d0.css.map} +1 -1
- package/dist/{vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-08db10.e872e687.chunk.js → vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-55e96b.7a2a9659.chunk.js} +371 -452
- package/dist/{vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-08db10.e872e687.chunk.js.map → vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-55e96b.7a2a9659.chunk.js.map} +1 -1
- package/dist/{vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-08db10.css → vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-55e96b.css} +1 -1
- package/dist/{vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-08db10.css.map → vendors-node_modules_reduxjs_toolkit_dist_redux-toolkit_esm_js-node_modules_sentry_browser_es-55e96b.css.map} +1 -1
- package/dist/zapp-shell.bundle.js +4 -4
- package/dist/zapp-shell.bundle.js.map +1 -1
- package/package.json +5 -5
- package/types/exports/index.d.ts +8 -2
- package/types/network/soap.d.ts +8 -12
- package/types/search/index.d.ts +1 -0
- package/dist/src_boot_bootstrapper_tsx-node_modules_moment_locale_sync_recursive_.1bbb2842.chunk.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"src_boot_bootstrapper_tsx-node_modules_moment_locale_sync_recursive_.b732e9fa.chunk.js","mappings":"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ACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;;AAQO,IAAMwlB,YAAY,GAAG,SAAfA,YAAe,CAAC37B,CAAD;AAAA,SAA6C,CACxE;AACCmW,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GADwE,EAKxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GALwE,EASxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GATwE,EAaxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA9B;AAFT,GAbwE,EAiBxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GAjBwE,EAwBxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GAxBwE,EA+BxE;AACCpkB,IAAAA,KAAK,EAAE,qBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,8BAAD,EAAiC;AACxCmW,MAAAA,KAAK,EAAE,YADiC;AAExCokB,MAAAA,YAAY,EAAE;AAF0B,KAAjC;AAFT,GA/BwE,EAsCxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GAtCwE,EA6CxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GA7CwE,EAoDxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GApDwE,EA2DxE;AACCpkB,IAAAA,KAAK,EAAE,qBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,8BAAD,EAAiC;AACxCmW,MAAAA,KAAK,EAAE,YADiC;AAExCokB,MAAAA,YAAY,EAAE;AAF0B,KAAjC;AAFT,GA3DwE,EAkExE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GAlEwE,EAsExE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GAtEwE,EA6ExE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GA7EwE,EAoFxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GApFwE,EA2FxE;AACCpkB,IAAAA,KAAK,EAAE,qBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,8BAAD,EAAiC;AACxCmW,MAAAA,KAAK,EAAE,YADiC;AAExCokB,MAAAA,YAAY,EAAE;AAF0B,KAAjC;AAFT,GA3FwE,EAkGxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GAlGwE,EAyGxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GAzGwE,EA6GxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GA7GwE,EAiHxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GAjHwE,EAwHxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GAxHwE,EA+HxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GA/HwE,EAmIxE;AACCpkB,IAAAA,KAAK,EAAE,8BADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uCAAD,EAA0C;AACjDmW,MAAAA,KAAK,EAAE,YAD0C;AAEjDokB,MAAAA,YAAY,EAAE;AAFmC,KAA1C;AAFT,GAnIwE,EA0IxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GA1IwE,EAiJxE;AACCpkB,IAAAA,KAAK,EAAE,wBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,iCAAD,EAAoC;AAC3CmW,MAAAA,KAAK,EAAE,YADoC;AAE3CokB,MAAAA,YAAY,EAAE;AAF6B,KAApC;AAFT,GAjJwE,EAwJxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAxJwE,EA+JxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GA/JwE,EAmKxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GAnKwE,EAuKxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GAvKwE,EA8KxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GA9KwE,EAqLxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GArLwE,EA4LxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GA5LwE,EAmMxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GAnMwE,EA0MxE;AACCpkB,IAAAA,KAAK,EAAE,gCADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yCAAD,EAA4C;AACnDmW,MAAAA,KAAK,EAAE,YAD4C;AAEnDokB,MAAAA,YAAY,EAAE;AAFqC,KAA5C;AAFT,GA1MwE,EAiNxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA3B;AAFT,GAjNwE,EAqNxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GArNwE,EA4NxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GA5NwE,EAmOxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GAnOwE,EA0OxE;AACCpkB,IAAAA,KAAK,EAAE,sBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,+BAAD,EAAkC;AACzCmW,MAAAA,KAAK,EAAE,YADkC;AAEzCokB,MAAAA,YAAY,EAAE;AAF2B,KAAlC;AAFT,GA1OwE,EAiPxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GAjPwE,EAwPxE;AACCpkB,IAAAA,KAAK,EAAE,wBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,iCAAD,EAAoC;AAC3CmW,MAAAA,KAAK,EAAE,YADoC;AAE3CokB,MAAAA,YAAY,EAAE;AAF6B,KAApC;AAFT,GAxPwE,EA+PxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GA/PwE,EAmQxE;AACCpkB,IAAAA,KAAK,EAAE,qBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,8BAAD,EAAiC;AACxCmW,MAAAA,KAAK,EAAE,YADiC;AAExCokB,MAAAA,YAAY,EAAE;AAF0B,KAAjC;AAFT,GAnQwE,EA0QxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GA1QwE,EAiRxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GAjRwE,EAwRxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAClCmW,MAAAA,KAAK,EAAE,YAD2B;AAElCokB,MAAAA,YAAY,EAAE;AAFoB,KAA3B;AAFT,GAxRwE,EA+RxE;AACCpkB,IAAAA,KAAK,EAAE,KADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,cAAD,EAAiB;AACxBmW,MAAAA,KAAK,EAAE,SADiB;AAExBokB,MAAAA,YAAY,EAAE;AAFU,KAAjB;AAFT,GA/RwE,EAsSxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GAtSwE,EA6SxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GA7SwE,EAoTxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GApTwE,EA2TxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAClCmW,MAAAA,KAAK,EAAE,YAD2B;AAElCokB,MAAAA,YAAY,EAAE;AAFoB,KAA3B;AAFT,GA3TwE,EAkUxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GAlUwE,EAyUxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAClCmW,MAAAA,KAAK,EAAE,YAD2B;AAElCokB,MAAAA,YAAY,EAAE;AAFoB,KAA3B;AAFT,GAzUwE,EAgVxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GAhVwE,EAoVxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAClCmW,MAAAA,KAAK,EAAE,YAD2B;AAElCokB,MAAAA,YAAY,EAAE;AAFoB,KAA3B;AAFT,GApVwE,EA2VxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAzB;AAFT,GA3VwE,EA+VxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GA/VwE,EAsWxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GAtWwE,EA0WxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GA1WwE,EA8WxE;AACCpkB,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GA9WwE,EAkXxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAzB;AAFT,GAlXwE,EAsXxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA3B;AAFT,GAtXwE,EA0XxE;AACCpkB,IAAAA,KAAK,EAAE,WADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,oBAAD,EAAuB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAvB;AAFT,GA1XwE,EA8XxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GA9XwE,EAqYxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAClCmW,MAAAA,KAAK,EAAE,YAD2B;AAElCokB,MAAAA,YAAY,EAAE;AAFoB,KAA3B;AAFT,GArYwE,EA4YxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GA5YwE,EAmZxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GAnZwE,EA0ZxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GA1ZwE,EAiaxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GAjawE,EAwaxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GAxawE,EA4axE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GA5awE,EAgbxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAChCmW,MAAAA,KAAK,EAAE,YADyB;AAEhCokB,MAAAA,YAAY,EAAE;AAFkB,KAAzB;AAFT,GAhbwE,EAubxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AACpCmW,MAAAA,KAAK,EAAE,YAD6B;AAEpCokB,MAAAA,YAAY,EAAE;AAFsB,KAA7B;AAFT,GAvbwE,EA8bxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GA9bwE,EAkcxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAClCmW,MAAAA,KAAK,EAAE,YAD2B;AAElCokB,MAAAA,YAAY,EAAE;AAFoB,KAA3B;AAFT,GAlcwE,EAycxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAzcwE,EAgdxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAzB;AAFT,GAhdwE,EAodxE;AACCpkB,IAAAA,KAAK,EAAE,WADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,oBAAD,EAAuB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAvB;AAFT,GApdwE,EAwdxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAChCmW,MAAAA,KAAK,EAAE,YADyB;AAEhCokB,MAAAA,YAAY,EAAE;AAFkB,KAAzB;AAFT,GAxdwE,EA+dxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GA/dwE,EAmexE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GAnewE,EAuexE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAvewE,EA8exE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAClCmW,MAAAA,KAAK,EAAE,YAD2B;AAElCokB,MAAAA,YAAY,EAAE;AAFoB,KAA3B;AAFT,GA9ewE,EAqfxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA5B;AAFT,GArfwE,EAyfxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAzfwE,EAggBxE;AACCpkB,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GAhgBwE,EAogBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AACjCmW,MAAAA,KAAK,EAAE,YAD0B;AAEjCokB,MAAAA,YAAY,EAAE;AAFmB,KAA1B;AAFT,GApgBwE,EA2gBxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GA3gBwE,EAkhBxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA3B;AAFT,GAlhBwE,EAshBxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GAthBwE,EA6hBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AACjCmW,MAAAA,KAAK,EAAE,YAD0B;AAEjCokB,MAAAA,YAAY,EAAE;AAFmB,KAA1B;AAFT,GA7hBwE,EAoiBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AACjCmW,MAAAA,KAAK,EAAE,YAD0B;AAEjCokB,MAAAA,YAAY,EAAE;AAFmB,KAA1B;AAFT,GApiBwE,EA2iBxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GA3iBwE,EAkjBxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAzB;AAFT,GAljBwE,EAsjBxE;AACCpkB,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GAtjBwE,EA0jBxE;AACCpkB,IAAAA,KAAK,EAAE,WADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,oBAAD,EAAuB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAvB;AAFT,GA1jBwE,EA8jBxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAzB;AAFT,GA9jBwE,EAkkBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AACjCmW,MAAAA,KAAK,EAAE,YAD0B;AAEjCokB,MAAAA,YAAY,EAAE;AAFmB,KAA1B;AAFT,GAlkBwE,EAykBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GAzkBwE,EA6kBxE;AACCpkB,IAAAA,KAAK,EAAE,WADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,oBAAD,EAAuB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAvB;AAFT,GA7kBwE,EAilBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAjlBwE,EAwlBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAxlBwE,EA+lBxE;AACCpkB,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GA/lBwE,EAmmBxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GAnmBwE,EA0mBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AACjCmW,MAAAA,KAAK,EAAE,YAD0B;AAEjCokB,MAAAA,YAAY,EAAE;AAFmB,KAA1B;AAFT,GA1mBwE,EAinBxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GAjnBwE,EAwnBxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GAxnBwE,EA+nBxE;AACCpkB,IAAAA,KAAK,EAAE,aADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,sBAAD,EAAyB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAzB;AAFT,GA/nBwE,EAmoBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAnoBwE,EA0oBxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GA1oBwE,EA8oBxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GA9oBwE,EAkpBxE;AACCpkB,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GAlpBwE,EAspBxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GAtpBwE,EA6pBxE;AACCpkB,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GA7pBwE,EAiqBxE;AACCpkB,IAAAA,KAAK,EAAE,YADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAAxB;AAFT,GAjqBwE,EAqqBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AACjCmW,MAAAA,KAAK,EAAE,YAD0B;AAEjCokB,MAAAA,YAAY,EAAE;AAFmB,KAA1B;AAFT,GArqBwE,EA4qBxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GA5qBwE,EAmrBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA9B;AAFT,GAnrBwE,EAurBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAvrBwE,EA8rBxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GA9rBwE,EAqsBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA9B;AAFT,GArsBwE,EAysBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAzsBwE,EAgtBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AACjCmW,MAAAA,KAAK,EAAE,YAD0B;AAEjCokB,MAAAA,YAAY,EAAE;AAFmB,KAA1B;AAFT,GAhtBwE,EAutBxE;AACCpkB,IAAAA,KAAK,EAAE,qBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,8BAAD,EAAiC;AACxCmW,MAAAA,KAAK,EAAE,YADiC;AAExCokB,MAAAA,YAAY,EAAE;AAF0B,KAAjC;AAFT,GAvtBwE,EA8tBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GA9tBwE,EAkuBxE;AACCpkB,IAAAA,KAAK,EAAE,eADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,wBAAD,EAA2B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA3B;AAFT,GAluBwE,EAsuBxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GAtuBwE,EA6uBxE;AACCpkB,IAAAA,KAAK,EAAE,sBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,+BAAD,EAAkC;AACzCmW,MAAAA,KAAK,EAAE,YADkC;AAEzCokB,MAAAA,YAAY,EAAE;AAF2B,KAAlC;AAFT,GA7uBwE,EAovBxE;AACCpkB,IAAAA,KAAK,EAAE,qBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,8BAAD,EAAiC;AACxCmW,MAAAA,KAAK,EAAE,YADiC;AAExCokB,MAAAA,YAAY,EAAE;AAF0B,KAAjC;AAFT,GApvBwE,EA2vBxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GA3vBwE,EA+vBxE;AACCpkB,IAAAA,KAAK,EAAE,gBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,yBAAD,EAA4B;AACnCmW,MAAAA,KAAK,EAAE,YAD4B;AAEnCokB,MAAAA,YAAY,EAAE;AAFqB,KAA5B;AAFT,GA/vBwE,EAswBxE;AACCpkB,IAAAA,KAAK,EAAE,kBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,2BAAD,EAA8B;AACrCmW,MAAAA,KAAK,EAAE,YAD8B;AAErCokB,MAAAA,YAAY,EAAE;AAFuB,KAA9B;AAFT,GAtwBwE,EA6wBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GA7wBwE,EAixBxE;AACCpkB,IAAAA,KAAK,EAAE,iBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA7B;AAFT,GAjxBwE,EAqxBxE;AACCpkB,IAAAA,KAAK,EAAE,cADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,uBAAD,EAA0B;AAAEmW,MAAAA,KAAK,EAAE,YAAT;AAAuBokB,MAAAA,YAAY,EAAE;AAArC,KAA1B;AAFT,GArxBwE,EAyxBxE;AACCpkB,IAAAA,KAAK,EAAE,mBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,4BAAD,EAA+B;AACtCmW,MAAAA,KAAK,EAAE,YAD+B;AAEtCokB,MAAAA,YAAY,EAAE;AAFwB,KAA/B;AAFT,GAzxBwE,EAgyBxE;AACCpkB,IAAAA,KAAK,EAAE,oBADR;AAEC3Q,IAAAA,KAAK,EAAExF,CAAC,CAAC,6BAAD,EAAgC;AACvCmW,MAAAA,KAAK,EAAE,YADgC;AAEvCokB,MAAAA,YAAY,EAAE;AAFyB,KAAhC;AAFT,GAhyBwE,CAA7C;AAAA,CAArB;;;;;;;;;;;;;;;;;;;;;;ACneP;AACA;AACA;AACA;AACA;AAIO,IAAM/D,eAAe,GAAG,SAAlBA,eAAkB,CAACx2B,CAAD;AAAA,SAAuC;AACrEwF,IAAAA,KAAK,EAAExF,CAAC,CAAC,gCAAD,EAAmC,eAAnC,CAD6D;AAErEmF,IAAAA,EAAE,EAAE;AAFiE,GAAvC;AAAA,CAAxB;AAIA,IAAMy2B,6BAA6B,GAAG,SAAhCA,6BAAgC,CAAC57B,CAAD;AAAA,SAAuC;AACnFwF,IAAAA,KAAK,EAAExF,CAAC,CAAC,gCAAD,EAAmC,wBAAnC,CAD2E;AAEnFmF,IAAAA,EAAE,EAAE;AAF+E,GAAvC;AAAA,CAAtC;AAIA,IAAMizB,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACp4B,CAAD;AAAA,SAAuC;AAC3EwF,IAAAA,KAAK,EAAExF,CAAC,CAAC,gDAAD,EAAmD,wBAAnD,CADmE;AAE3EmF,IAAAA,EAAE,EAAE;AAFuE,GAAvC;AAAA,CAA9B;AAIA,IAAM02B,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAC77B,CAAD;AAAA,SAAuC;AAC3EwF,IAAAA,KAAK,EAAExF,CAAC,CAAC,YAAD,EAAe,QAAf,CADmE;AAE3EmF,IAAAA,EAAE,EAAE;AAFuE,GAAvC;AAAA,CAA9B;AAIA,IAAMgyB,kBAAkB,GAAG,SAArBA,kBAAqB,CAACn3B,CAAD;AAAA,SAAuC;AACxEwF,IAAAA,KAAK,EAAExF,CAAC,CAAC,oBAAD,EAAuB,sBAAvB,CADgE;AAExEmF,IAAAA,EAAE,EAAE;AAFoE,GAAvC;AAAA,CAA3B;AAIA,IAAM20B,eAAe,GAAG,SAAlBA,eAAkB,CAAC95B,CAAD;AAAA,SAAuC;AACrEwF,IAAAA,KAAK,EAAExF,CAAC,CAAC,kBAAD,EAAqB,cAArB,CAD6D;AAErEmF,IAAAA,EAAE,EAAE;AAFiE,GAAvC;AAAA,CAAxB;AAIA,IAAM2xB,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC92B,CAAD;AAAA,SAAuC;AACvEwF,IAAAA,KAAK,EAAExF,CAAC,CAAC,0BAAD,EAA6B,SAA7B,CAD+D;AAEvEmF,IAAAA,EAAE,EAAE;AAFmE,GAAvC;AAAA,CAA1B;AAKA,IAAMF,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACjF,CAAD;AAAA,SAA6C,CAC/Ew2B,eAAe,CAACx2B,CAAD,CADgE,EAE/E47B,6BAA6B,CAAC57B,CAAD,CAFkD,EAG/Eo4B,qBAAqB,CAACp4B,CAAD,CAH0D,EAI/E67B,qBAAqB,CAAC77B,CAAD,CAJ0D,EAK/Em3B,kBAAkB,CAACn3B,CAAD,CAL6D,EAM/E85B,eAAe,CAAC95B,CAAD,CANgE,EAO/E82B,iBAAiB,CAAC92B,CAAD,CAP8D,CAA7C;AAAA,CAA5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrCP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;;AAEA,IAAMyE,eAAmB,GAAG,SAAtBA,eAAsB,GAAM;AACjC,kBAAwBmJ,gDAAQ,CAAO,EAAP,CAAhC;AAAA;AAAA,MAAOmI,IAAP;AAAA,MAAauX,OAAb;;AACA,wBAAYthB,8DAAc,EAA1B;AAAA;AAAA,MAAOhM,CAAP;;AACA,MAAM8G,QAAQ,GAAGjL,gEAAe,EAAhC;;AACA,mBAAwB+R,gDAAQ,CAAC,KAAD,CAAhC;AAAA;AAAA,MAAOsU,IAAP;AAAA,MAAamD,OAAb;;AACA,MAAM2I,MAAM,GAAG5zB,mDAAW,CAAC,UAAC8e,IAAD,EAA0BhD,GAA1B,EAA+BC,KAA/B,EAAyC;AACnEmX,IAAAA,OAAO,CAAC,UAAClI,CAAD;AAAA,6CACJA,CADI,6FAENlM,IAFM,kCAGHkM,CAHG,aAGHA,CAHG,uBAGHA,CAAC,CAAGlM,IAAH,CAHE,6FAILhD,GAJK,EAICC,KAJD;AAAA,KAAD,CAAP;AAOA,GARyB,EAQvB,EARuB,CAA1B;AASA,MAAM3J,cAAc,GAAGsgB,6EAAW,EAAlC;AAEA,MAAMkC,MAAM,GAAG50B,mDAAW,CAAC,YAAM;AAChCgK,IAAAA,qEAAY,CAAC2R,IAAD,CAAZ,CACE3M,IADF,CACO,YAAM;AACX,UAAI2M,IAAI,CAAC1I,KAAL,IAAcyL,iDAAQ,CAACrL,MAAM,CAACkL,IAAP,CAAY5C,IAAI,CAAC1I,KAAjB,CAAD,EAA0B,kBAA1B,CAA1B,EAAyE;AACxEgY,QAAAA,OAAO,CAAC,IAAD,CAAP;AACA;;AACD7Y,MAAAA,cAAc,CAAC;AACd0J,QAAAA,GAAG,OADW;AAEdtB,QAAAA,OAAO,EAAE,IAFK;AAGdsE,QAAAA,IAAI,EAAE,MAHQ;AAId1T,QAAAA,KAAK,EAAExF,CAAC,CAAC,iCAAD,EAAoC,uBAApC,CAJM;AAKdivB,QAAAA,eAAe,EAAE,IALH;AAMdC,QAAAA,UAAU,EAAE;AANE,OAAD,CAAd;AAQA,KAbF,WAcQ,YAAM;AACZ1iB,MAAAA,cAAc,CAAC;AACd0J,QAAAA,GAAG,OADW;AAEdtB,QAAAA,OAAO,EAAE,IAFK;AAGdsE,QAAAA,IAAI,EAAE,OAHQ;AAId1T,QAAAA,KAAK,EAAExF,CAAC,CAAC,gBAAD,EAAmB,wCAAnB,CAJM;AAKdivB,QAAAA,eAAe,EAAE,IALH;AAMdC,QAAAA,UAAU,EAAE;AANE,OAAD,CAAd;AAQA,KAvBF;AAwBA5B,IAAAA,OAAO,CAAC,EAAD,CAAP;AACA,GA1ByB,EA0BvB,CAAC9gB,cAAD,EAAiBuJ,IAAjB,EAAuB/V,CAAvB,CA1BuB,CAA1B;AA2BA,MAAMmvB,QAAQ,GAAG/0B,mDAAW,CAAC,YAAM;AAClCkzB,IAAAA,OAAO,CAAC,EAAD,CAAP;AACA,GAF2B,EAEzB,EAFyB,CAA5B;AAGA,MAAM8B,OAAO,GAAGzuB,+CAAO,CAAC;AAAA,WAAM,CAACC,gDAAO,CAACmV,IAAD,CAAd;AAAA,GAAD,EAAuB,CAACA,IAAD,CAAvB,CAAvB;AACA,MAAMrB,KAAK,GAAG/T,+CAAO,CAAC;AAAA,WAAMX,CAAC,CAAC,0BAAD,EAA6B,kBAA7B,CAAP;AAAA,GAAD,EAA0D,CAACA,CAAD,CAA1D,CAArB;AAEA,sBACC,yIACC,4DAAC,oEAAD;AAAgB,SAAK,EAAE0U,KAAvB;AAA8B,YAAQ,EAAEya,QAAxC;AAAkD,UAAM,EAAEH,MAA1D;AAAkE,WAAO,EAAEI;AAA3E,IADD,eAEC,4DAAC,uEAAD;AACC,cAAU,EAAC,OADZ;AAEC,iBAAa,EAAC,YAFf;AAGC,WAAO,EAAE;AAAEjN,MAAAA,GAAG,EAAE;AAAP,KAHV;AAIC,SAAK,EAAE;AAAE3gB,MAAAA,QAAQ,EAAE;AAAZ;AAJR,kBAMC,4DAAC,yFAAD;AAAoB,YAAQ,EAAEsF,QAA9B;AAAwC,UAAM,EAAEknB;AAAhD,IAND,eAOC,4DAAC,wEAAD;AACC,YAAQ,EAAElnB,QADX;AAEC,UAAM,EAAEknB,MAFT;AAGC,QAAI,EAAE9L,IAHP;AAIC,WAAO,EAAEmD;AAJV,IAPD,eAcC,4DAAC,wFAAD;AAAqB,YAAQ,EAAEve,QAA/B;AAAyC,UAAM,EAAEknB;AAAjD,IAdD,eAeC,4DAAC,8DAAD;AAAoB,YAAQ,EAAElnB,QAA9B;AAAwC,UAAM,EAAEknB;AAAhD,IAfD,eAgBC,4DAAC,6FAAD,OAhBD,eAiBC,4DAAC,gFAAD;AAAW,cAAU,EAAE;AAAvB,IAjBD,eAkBC,4DAAC,4EAAD,OAlBD,CAFD,CADD;AAyBA,CA1ED;;AA4EA,iEAAevpB,eAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClGA;AACA;AACA;AACA;AACA;AAEA;CAWA;;AACA;AACA;AACA;AAEA;AACA;AAEA8vB,2DAAe;;AAEf,IAAM2H,mBAKJ,GAAG,SALCA,mBAKD,OAAyC;AAAA,MAAtCp1B,QAAsC,QAAtCA,QAAsC;AAAA,MAA5BknB,MAA4B,QAA5BA,MAA4B;AAAA,MAApB9L,IAAoB,QAApBA,IAAoB;AAAA,MAAdmD,OAAc,QAAdA,OAAc;;AAC7C,wBAAcrZ,6DAAc,EAA5B;AAAA,MAAQhM,CAAR,mBAAQA,CAAR;;AACA,MAAMm8B,OAAO,GAAGx7B,8CAAO,CAAC;AAAA,WAAM86B,6DAAU,CAACz7B,CAAD,CAAhB;AAAA,GAAD,EAAsB,CAACA,CAAD,CAAtB,CAAvB;AACA,MAAMo8B,SAAS,GAAGz7B,8CAAO,CAAC;AAAA,WAAMg7B,+DAAY,CAAC37B,CAAD,CAAlB;AAAA,GAAD,EAAwB,CAACA,CAAD,CAAxB,CAAzB;AAEA,MAAM81B,WAAW,GAAG17B,kDAAW,CAC9B,UAACovB,CAAD,EAAInT,CAAJ,EAAU;AACT2X,IAAAA,MAAM,CAAC,OAAD,EAAU3X,CAAV,EAAamT,CAAb,CAAN;AACA,GAH6B,EAI9B,CAACwE,MAAD,CAJ8B,CAA/B;AAOA,MAAMqO,aAAa,GAAG17B,8CAAO,CAAC,YAAM;AAAA;;AACnC,QAAM27B,QAAQ,YAAIx1B,QAAQ,CAACuG,KAAT,CAAeC,gBAAnB,yCAAkD,IAAhE;AACA,QAAMivB,MAAM,GAAG5nB,4CAAI,CAACwnB,OAAD,EAAU;AAAEh3B,MAAAA,EAAE,EAAEm3B;AAAN,KAAV,CAAnB;AACA,WAAOC,MAAP,aAAOA,MAAP,cAAOA,MAAP,GAAiB5nB,4CAAI,CAACwnB,OAAD,EAAU;AAAEh3B,MAAAA,EAAE,EAAE;AAAN,KAAV,CAArB;AACA,GAJ4B,EAI1B,CAACg3B,OAAD,EAAUr1B,QAAQ,CAACuG,KAAT,CAAeC,gBAAzB,CAJ0B,CAA7B;AAMA,MAAMkvB,eAAe,GAAG77B,8CAAO,CAAC,YAAM;AAAA;;AACrC,QAAM87B,UAAU,YAAI31B,QAAQ,CAACuG,KAAT,CAAeqvB,oBAAnB,yCAAsD,KAAtE;AACA,QAAMC,QAAQ,GAAGhoB,4CAAI,CAACynB,SAAD,EAAY;AAAEjmB,MAAAA,KAAK,EAAEsmB;AAAT,KAAZ,CAArB;AACA,WAAOE,QAAP,aAAOA,QAAP,cAAOA,QAAP,GAAmBhoB,4CAAI,CAACynB,SAAD,EAAY;AAAEjmB,MAAAA,KAAK,EAAE;AAAT,KAAZ,CAAvB;AACA,GAJ8B,EAI5B,CAACimB,SAAD,EAAYt1B,QAAQ,CAACuG,KAAT,CAAeqvB,oBAA3B,CAJ4B,CAA/B;AAMA,MAAM1F,YAAY,GAAGr2B,8CAAO,CAAC;AAAA,WAAMi7B,6FAA6B,CAAC57B,CAAD,CAAnC;AAAA,GAAD,EAAyC,CAACA,CAAD,CAAzC,CAA5B;AACA,sBACC,2DAAC,2EAAD;AACC,SAAK,EAAEg3B,YAAY,CAACxxB,KADrB;AAEC,YAAQ,EAAC,wBAFV;AAGC,SAAK,EAAC,KAHP;AAIC,MAAE,EAAEwxB,YAAY,CAAC7xB;AAJlB,kBAMC,2DAAC,sEAAD;AAAW,kBAAc,EAAC,UAA1B;AAAqC,WAAO,EAAE;AAAEgd,MAAAA,GAAG,EAAE;AAAP;AAA9C,KACE1U,MAAM,CAACkL,IAAP,CAAY7R,QAAQ,CAACuG,KAArB,EAA4B+U,MAA5B,GAAqC,CAArC,iBACA,2DAAC,mEAAD;AACC,SAAK,EAAE+Z,OADR;AAEC,cAAU,EAAC,OAFZ;AAGC,SAAK,EAAEn8B,CAAC,CAAC,gBAAD,EAAmB,UAAnB,CAHT;AAIC,YAAQ,EAAE,kBAACmW,KAAD,EAAsB;AAC/B,UAAIA,KAAK,IAAIA,KAAK,KAAKrP,QAAQ,CAACuG,KAAT,CAAeC,gBAAtC,EACCwoB,WAAW,CAAC3f,KAAD,EAAQ,kBAAR,CAAX;AACD,KAPF;AAQC,oBAAgB,EAAEkmB,aARnB;AASC,gBAAY,EAAE,KATf;AAUC,qBAAiB,EAAC,OAVnB;AAWC,2BAAuB,EAAC;AAXzB,IAFF,eAgBC,2DAAC,oEAAD;AAAS,OAAG,EAAC,OAAb;AAAqB,SAAK,EAAC;AAA3B,KACE5uB,MAAM,CAACkL,IAAP,CAAY7R,QAAQ,CAACuG,KAArB,EAA4B+U,MAA5B,GAAqC,CAArC,IAA0Cga,SAA1C,iBACA,2DAAC,mEAAD;AACC,SAAK,EAAEA,SADR;AAEC,cAAU,EAAC,OAFZ;AAGC,SAAK,EAAEp8B,CAAC,CAAC,iBAAD,EAAoB,WAApB,CAHT;AAIC,YAAQ,EAAE,kBAACmW,KAAD,EAAsB;AAC/B,UAAIA,KAAK,IAAIA,KAAK,KAAKrP,QAAQ,CAACuG,KAAT,CAAeqvB,oBAAtC,EACC5G,WAAW,CAAC3f,KAAD,EAAQ,sBAAR,CAAX;AACD,KAPF;AAQC,aAAS,EAAEqmB,eARZ;AASC,gBAAY,EAAE,KATf;AAUC,qBAAiB,EAAC,OAVnB;AAWC,2BAAuB,EAAC;AAXzB,IAFF,CAhBD,eAiCC,2DAAC,kEAAD;AACC,SAAK,EAAEx8B,CAAC,CAAC,cAAD,EAAiB,QAAjB,CADT;AAEC,QAAI,EAAEkiB,IAFP;AAGC,gBAAY,EAAEliB,CAAC,CAAC,UAAD,EAAa,IAAb,CAHhB;AAIC,aAAS,EAAE;AAAA,aAAYoI,MAAM,CAACkL,QAAP,CAAgBspB,MAAhB,EAAZ;AAAA,KAJZ;AAKC,gBAAY,EAAE58B,CAAC,CAAC,cAAD,EAAiB,QAAjB,CALhB;AAMC,WAAO,EAAE;AAAA,aAAYqlB,OAAO,CAAC,KAAD,CAAnB;AAAA;AANV,kBAQC,2DAAC,iEAAD;AAAM,YAAQ,EAAC;AAAf,KACErlB,CAAC,CACD,gBADC,iKADH,CARD,CAjCD,CAND,CADD;AA2DA,CAzFD;;AA2FA,iEAAek8B,mBAAf;;;;;;;;;;;;;;;;;;;;;;;;ACtHA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;;AAEA,IAAMF,kBAGJ,GAAG,SAHCA,kBAGD,OAA0B;AAAA,MAAvBl1B,QAAuB,QAAvBA,QAAuB;AAAA,MAAbknB,MAAa,QAAbA,MAAa;;AAC9B,wBAAchiB,6DAAc,EAA5B;AAAA,MAAQhM,CAAR,mBAAQA,CAAR;;AACA,kBAAoD4N,+CAAQ,CAC3D9G,QAAQ,CAACuG,KAAT,CAAewvB,6BAAf,KAAiD,MADU,CAA5D;AAAA;AAAA,MAAOC,kBAAP;AAAA,MAA2BC,qBAA3B;;AAGA,mBAAsDnvB,+CAAQ,CAC7D9G,QAAQ,CAACuG,KAAT,CAAe2vB,8BAAf,KAAkD,MADW,CAA9D;AAAA;AAAA,MAAOC,mBAAP;AAAA,MAA4BC,sBAA5B;;AAGA,mBAAwDtvB,+CAAQ,CAC/D9G,QAAQ,CAACuG,KAAT,CAAe8vB,oCAAf,KAAwD,MADO,CAAhE;AAAA;AAAA,MAAOC,oBAAP;AAAA,MAA6BC,uBAA7B;;AAGA,MAAMC,OAAO,GAAGljC,kDAAW,CAC1B,UAACovB,CAAD,EAAInT,CAAJ,EAAU;AACT,QAAMF,KAAU,GAAGqT,CAAC,GAAG,MAAH,GAAY,OAAhC;AACAwE,IAAAA,MAAM,CAAC,OAAD,EAAU3X,CAAV,EAAaF,KAAb,CAAN;AACA,GAJyB,EAK1B,CAAC6X,MAAD,CAL0B,CAA3B;AAQA1iB,EAAAA,gDAAS,CAAC,YAAM;AACfyxB,IAAAA,qBAAqB,CAACj2B,QAAQ,CAACuG,KAAT,CAAewvB,6BAAf,KAAiD,MAAlD,CAArB;AACA,GAFQ,EAEN,CAAC/1B,QAAQ,CAACuG,KAAT,CAAewvB,6BAAhB,CAFM,CAAT;AAGAvxB,EAAAA,gDAAS,CAAC,YAAM;AACf4xB,IAAAA,sBAAsB,CAACp2B,QAAQ,CAACuG,KAAT,CAAe2vB,8BAAf,KAAkD,MAAnD,CAAtB;AACA,GAFQ,EAEN,CAACl2B,QAAQ,CAACuG,KAAT,CAAe2vB,8BAAhB,CAFM,CAAT;AAGA1xB,EAAAA,gDAAS,CAAC,YAAM;AACf+xB,IAAAA,uBAAuB,CAACv2B,QAAQ,CAACuG,KAAT,CAAe8vB,oCAAf,KAAwD,MAAzD,CAAvB;AACA,GAFQ,EAEN,CAACr2B,QAAQ,CAACuG,KAAT,CAAe8vB,oCAAhB,CAFM,CAAT;AAIA,MAAMI,WAAW,GAAGnjC,kDAAW,CAAC,YAAM;AACrC2iC,IAAAA,qBAAqB,CAAC,CAACD,kBAAF,CAArB;AACAQ,IAAAA,OAAO,CAAC,CAACR,kBAAF,EAAsB,+BAAtB,CAAP;AACA,GAH8B,EAG5B,CAACA,kBAAD,EAAqBQ,OAArB,CAH4B,CAA/B;AAIA,MAAME,YAAY,GAAGpjC,kDAAW,CAAC,YAAM;AACtC8iC,IAAAA,sBAAsB,CAAC,CAACD,mBAAF,CAAtB;AACAK,IAAAA,OAAO,CAAC,CAACL,mBAAF,EAAuB,gCAAvB,CAAP;AACA,GAH+B,EAG7B,CAACA,mBAAD,EAAsBK,OAAtB,CAH6B,CAAhC;AAIA,MAAMG,aAAa,GAAGrjC,kDAAW,CAAC,YAAM;AACvCijC,IAAAA,uBAAuB,CAAC,CAACD,oBAAF,CAAvB;AACAE,IAAAA,OAAO,CAAC,CAACF,oBAAF,EAAwB,sCAAxB,CAAP;AACA,GAHgC,EAG9B,CAACA,oBAAD,EAAuBE,OAAvB,CAH8B,CAAjC;AAIA,MAAMtG,YAAY,GAAGr2B,8CAAO,CAAC;AAAA,WAAMk7B,qFAAqB,CAAC77B,CAAD,CAA3B;AAAA,GAAD,EAAiC,CAACA,CAAD,CAAjC,CAA5B;AACA,sBACC,2DAAC,2EAAD;AACC,SAAK,EAAEg3B,YAAY,CAACxxB,KADrB;AAEC,YAAQ,EAAC,wBAFV;AAGC,SAAK,EAAC,KAHP;AAIC,MAAE,EAAEwxB,YAAY,CAAC7xB;AAJlB,kBAMC,2DAAC,sEAAD;AAAW,kBAAc,EAAC,UAA1B;AAAqC,WAAO,EAAE;AAAEgd,MAAAA,GAAG,EAAE;AAAP;AAA9C,kBACC,2DAAC,qEAAD;AACC,SAAK,EAAEniB,CAAC,CACP,+DADO,EAEP,iCAFO,CADT;AAKC,SAAK,EAAE88B,kBALR;AAMC,WAAO,EAAES;AANV,IADD,eASC,2DAAC,qEAAD;AACC,SAAK,EAAEv9B,CAAC,CACP,gEADO,EAEP,kCAFO,CADT;AAKC,SAAK,EAAEi9B,mBALR;AAMC,WAAO,EAAEO;AANV,IATD,eAiBC,2DAAC,qEAAD;AACC,SAAK,EAAEx9B,CAAC,CACP,iEADO,EAEP,mCAFO,CADT;AAKC,SAAK,EAAEo9B,oBALR;AAMC,WAAO,EAAEK;AANV,IAjBD,CAND,CADD;AAmCA,CAhFD;;AAkFA,iEAAezB,kBAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;AC9FA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEO,IAAMz3B,eAAmB,GAAG,SAAtBA,eAAsB,GAAM;AACxC,MAAMm5B,aAAa,GAAG58B,uDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQI,QAAf;AAAA,GAAD,CAAjC;AACA,MAAML,MAAM,GAAG9F,8CAAO,CACrB;AAAA,WACCE,2CAAG,CAAC68B,aAAD,EAAgB,UAACvW,IAAD;AAAA,0BAClB,2DAAC,mDAAD;AAAO,WAAG,EAAEA,IAAI,CAACzkB,KAAjB;AAAwB,aAAK,MAA7B;AAA8B,YAAI,aAAMoC,uDAAN,cAAyBqiB,IAAI,CAACzkB,KAA9B;AAAlC,sBACC,2DAAC,sEAAD;AAAoB,WAAG,EAAEykB,IAAI,CAAC/hB;AAA9B,sBACC,2DAAC,IAAD,CAAM,SAAN,OADD,CADD,CADkB;AAAA,KAAhB,CADJ;AAAA,GADqB,EASrB,CAACs4B,aAAD,CATqB,CAAtB;AAWA,sBACC,2DAAC,oDAAD,QACEj3B,MADF,eAEC,2DAAC,sDAAD;AAAU,QAAI,aAAM3B,uDAAN,CAAd;AAAuC,SAAK,MAA5C;AAA6C,UAAM,MAAnD;AAAoD,MAAE,aAAMA,uDAAN;AAAtD,IAFD,CADD;AAMA,CAnBM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACbP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEO,IAAMN,eAA0C,GAAG,SAA7CA,eAA6C,OAAkB;AAAA,MAAfo5B,QAAe,QAAfA,QAAe;AAC3E,MAAMF,aAAa,GAAG58B,wDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQI,QAAf;AAAA,GAAD,CAAjC;AACA,MAAMyF,OAAO,GAAGb,6DAAU,EAA1B;AACA,MAAM4H,QAAQ,GAAGwB,8DAAW,EAA5B;AACA,MAAMgc,KAAK,GAAGnwB,+CAAO,CACpB;AAAA,WACC+8B,aAAa,CAAC78B,GAAd,CAAkB,UAACsmB,IAAD;AAAA,aAAW;AAC5BhiB,QAAAA,EAAE,EAAEgiB,IAAI,CAACzkB,KADmB;AAE5B8C,QAAAA,KAAK,EAAE2hB,IAAI,CAAC3hB,KAFgB;AAG5BM,QAAAA,IAAI,EAAEqhB,IAAI,CAACrhB,IAHiB;AAI5ByJ,QAAAA,MAAM,EAAE+D,QAAQ,CAACC,QAAT,gBAA0BzO,wDAA1B,cAA6CqiB,IAAI,CAACzkB,KAAlD,KAA6D4Q,QAAQ,CAACkC,MAAT,KAAoB,EAJ7D;AAK5BqoB,QAAAA,YAAY,EACXvqB,QAAQ,CAACC,QAAT,gBAA0BzO,wDAA1B,cAA6CqiB,IAAI,CAACzkB,KAAlD,KAA6D4Q,QAAQ,CAACkC,MAAT,KAAoB,EANtD;AAO5B+J,QAAAA,OAAO,EAAE,iBAACpX,CAAD,EAAmD;AAC3DA,UAAAA,CAAC,CAAC21B,eAAF;AACAvxB,UAAAA,OAAO,CAACtF,IAAR,YAAiBnC,wDAAjB,cAAoCqiB,IAAI,CAACzkB,KAAzC;AACA,SAV2B;AAW5BouB,QAAAA,KAAK,EAAEjwB,4CAAG,CAACsmB,IAAI,CAACphB,WAAN,EAAmB,UAAC0Q,IAAD;AAAA,iDACzBA,IADyB;AAE5BlH,YAAAA,MAAM,EAAE+D,QAAQ,CAACkC,MAAT,wBAAgCiB,IAAI,CAACtR,EAArC,CAFoB;AAG5B04B,YAAAA,YAAY,EAAEvqB,QAAQ,CAACkC,MAAT,wBAAgCiB,IAAI,CAACtR,EAArC,CAHc;AAI5Boa,YAAAA,OAAO,EAAE,iBAACpX,CAAD,EAAmD;AAC3DA,cAAAA,CAAC,CAAC21B,eAAF;AACAvxB,cAAAA,OAAO,CAACqI,OAAR,YAAoB9P,wDAApB,cAAuCqiB,IAAI,CAACzkB,KAA5C,sBAA6D+T,IAAI,CAACtR,EAAlE;AACA;AAP2B;AAAA,SAAnB;AAXkB,OAAX;AAAA,KAAlB,CADD;AAAA,GADoB,EAuBpB,CAACoH,OAAD,EAAU+G,QAAQ,CAACC,QAAnB,EAA6BD,QAAQ,CAACkC,MAAtC,EAA8CkoB,aAA9C,CAvBoB,CAArB;AAyBA,MAAMK,cAAc,GAAGp9B,+CAAO,CAC7B;AAAA,WACC+8B,aAAa,CAAC78B,GAAd,CAAkB,UAAC2oB,CAAD;AAAA,0BACjB,4DAAC,qEAAD;AAAS,aAAK,EAAEA,CAAC,CAAChkB,KAAlB;AAAyB,iBAAS,EAAC,OAAnC;AAA2C,WAAG,EAAEgkB,CAAC,CAACrkB;AAAlD,sBACC,sFACC,4DAAC,wEAAD;AACC,YAAI,EAAEqkB,CAAC,CAAC1jB,IADT;AAEC,eAAO,EAAE;AAAA,iBAAYyG,OAAO,CAACtF,IAAR,YAAiBnC,wDAAjB,cAAoC0kB,CAAC,CAAC9mB,KAAtC,EAAZ;AAAA,SAFV;AAGC,YAAI,EAAC;AAHN,QADD,CADD,CADiB;AAAA,KAAlB,CADD;AAAA,GAD6B,EAa7B,CAAC6J,OAAD,EAAUmxB,aAAV,CAb6B,CAA9B;AAeA,SAAOE,QAAQ,gBAAG,4DAAC,uEAAD;AAAW,SAAK,EAAE9M;AAAlB,IAAH,gBAAiC,4HAAGiN,cAAH,CAAhD;AACA,CA7CM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACbP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMC,sBAAsB,GAAG1d,6DAAM,CAACJ,sEAAD,CAAT;AAAA;AAAA;AAAA,6FAA5B;;AAQA,IAAM+d,gBAAoB,GAAG,SAAvBA,gBAAuB,GAAM;AAClC,MAAMr0B,IAAI,GAAG4W,sDAAU,EAAvB;AACA,MAAM/Z,MAAM,GAAGuO,qDAAS,EAAxB;AACA,MAAM1B,QAAQ,GAAGwB,6DAAW,EAA5B;AACA,MAAMopB,SAAS,GAAGv9B,8CAAO,CACxB;AAAA;;AAAA,oBAAMgU,4CAAI,CAAClO,MAAD,EAAS,UAACyO,CAAD;AAAA;;AAAA,aAAO,WAAAtL,IAAI,CAAC,CAAD,CAAJ,kDAAS7J,IAAT,MAAkBmV,CAAC,CAAC9P,GAA3B;AAAA,KAAT,CAAV,0CAAM,MAA8C1C,KAApD;AAAA,GADwB,EAExB,CAACkH,IAAD,EAAOnD,MAAP,CAFwB,CAAzB;AAIA,SAAOy3B,SAAS,IAAI,CAAA5qB,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAEC,QAAV,MAAuB,GAApC,gBACN,2DAAC,sDAAD;AAAU,SAAK,MAAf;AAAgB,UAAM,MAAtB;AAAuB,QAAI,EAAC,GAA5B;AAAgC,MAAE,aAAM2qB,SAAN;AAAlC,IADM,GAEH,IAFJ;AAGA,CAXD;;AAaA,IAAMC,gBAAoB,GAAG,SAAvBA,gBAAuB,GAAM;AAClC,MAAMC,QAAQ,GAAGt9B,uDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQG,OAAf;AAAA,GAAD,CAA5B;AACA,MAAMJ,MAAM,GAAG9F,8CAAO,CACrB;AAAA,gGACIE,2CAAG,CAACu9B,QAAD,EAAW,UAACjX,IAAD;AAAA,0BAChB,2DAAC,mDAAD;AAAO,WAAG,EAAEA,IAAI,CAAChiB,EAAjB;AAAqB,YAAI,aAAMgiB,IAAI,CAACzkB,KAAX;AAAzB,sBACC,2DAAC,sEAAD;AAAoB,WAAG,EAAEykB,IAAI,CAAC/hB,GAA9B;AAAmC,WAAG,EAAE+hB,IAAI,CAAC/hB;AAA7C,sBACC,2DAAC,IAAD,CAAM,SAAN,OADD,CADD,CADgB;AAAA,KAAX,CADP;AAAA,GADqB,EAUrB,CAACg5B,QAAD,CAVqB,CAAtB;AAaA,sBACC,2DAAC,sBAAD,qBACC,2DAAC,sEAAD;AAAW,iBAAa,EAAC;AAAzB,kBACC,2DAAC,oDAAD,QAAS33B,MAAT,CADD,eAEC,2DAAC,gBAAD,OAFD,CADD,CADD;AAQA,CAvBD;;AAyBA,iEAAe03B,gBAAf;;;;;;;;;;;;;;;;;;;;AC5DA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,IAAMG,SAAS,GAAGhe,6DAAM,CAACJ,sEAAD,CAAT;AAAA;AAAA;AAAA,8NAKA;AAAA;;AAAA,MAAGza,KAAH,QAAGA,KAAH;AAAA,MAAUkJ,KAAV,QAAUA,KAAV;AAAA,SAA8BA,KAAK,CAACQ,OAAN,iBAAc1J,KAAd,aAAcA,KAAd,uBAAcA,KAAK,CAAEgY,KAArB,uDAA8B,SAA9B,EAAyCpO,OAAvE;AAAA,CALA,CAAf,EAgBA;;AACA,IAAMkvB,SAAmC,gBAAGF,iDAAU,CACrD,iBAAsBpV,GAAtB;AAAA;;AAAA,MAAGxjB,KAAH,SAAGA,KAAH;AAAA,MAAUvL,QAAV,SAAUA,QAAV;AAAA,sBACC,2DAAC,sEAAD;AAAW,SAAK,EAAE,EAAlB;AAAsB,UAAM,EAAE,EAA9B;AAAkC,SAAK,EAAE;AAAEqL,MAAAA,QAAQ,EAAE;AAAZ,KAAzC;AAAmE,OAAG,EAAE0jB;AAAxE,KACExjB,KAAK,CAACC,IAAN,iBACA,2DAAC,SAAD;AAAW,SAAK,EAAED,KAAlB;AAAyB,UAAM,EAAC,KAAhC;AAAsC,SAAK,EAAC;AAA5C,KACEA,KAAK,CAAC+4B,SAAN,gBACA,2DAAC,iEAAD;AAAM,QAAI,EAAC,YAAX;AAAwB,SAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,SAAX;AAAsBC,MAAAA,QAAQ,EAAE;AAAhC,KAA/B;AAAyE,SAAK,EAAC;AAA/E,qBACEj5B,KAAK,CAACk5B,KADR,uDACiB,CADjB,CADA,GAIG,IALL,CAFF,EAUEzkC,QAVF,CADD;AAAA,CADqD,CAAtD;AAiBA,iEAAeqkC,SAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC5CA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAQA;AACA;AAQA;AACA;AAEA,IAAMY,kBAAkB,GAAG7e,wEAAH;AAAA;AAAA;AAAA,mIASrB;AAAA,MAAGsd,QAAH,QAAGA,QAAH;AAAA,SACDA,QAAQ,IACR3qB,sDADQ,2DADP;AAAA,CATqB,EAerB;AAAA,MAAGosB,SAAH,SAAGA,SAAH;AAAA,SACDA,SAAS,IACTpsB,sDADS,mBADR;AAAA,CAfqB,CAAxB;AAqBA,IAAMqsB,KAAK,GAAGhf,6DAAM,CAACJ,sEAAD,CAAT;AAAA;AAAA;AAAA,sKAUR;AAAA,MAAG0d,QAAH,SAAGA,QAAH;AAAA,SACDA,QAAQ,IACR3qB,sDADQ,2EADP;AAAA,CAVQ,CAAX;AAkBA,IAAMssB,WAAW,GAAGjf,6DAAM,CAACH,gEAAD,CAAT;AAAA;AAAA;AAAA,QAAjB;AACA,IAAMqf,oBAAoB,GAAGlf,6DAAM,CAACH,gEAAD,CAAT;AAAA;AAAA;AAAA,qBAA1B;AAGA,IAAMsf,UAAU,GAAGnf,6DAAM,CAAC9L,uEAAD,CAAT;AAAA;AAAA;AAAA,QAAhB;AACA,IAAMkrB,OAAO,GAAGpf,6DAAM,CAACH,gEAAD,CAAT;AAAA;AAAA;AAAA,QAAb;AAEO,IAAMwf,cAAkB,GAAG,SAArBA,cAAqB,GAAM;AAAA;;AACvC,wBAAY3zB,6DAAc,EAA1B;AAAA;AAAA,MAAOhM,CAAP;;AACA,uBAAiDg/B,4DAAa,EAA9D;AAAA,MAAQY,MAAR,kBAAQA,MAAR;AAAA,MAAgBP,SAAhB,kBAAgBA,SAAhB;AAAA,MAA2BzB,QAA3B,kBAA2BA,QAA3B;AAAA,MAAqCnmB,OAArC,kBAAqCA,OAArC;;AACA,MAAI7W,+CAAO,CAACg/B,MAAD,CAAP,IAAmB,CAACnoB,OAAxB,EAAiC,OAAO,IAAP;AACjC,sBACC,2DAAC,kBAAD;AAAoB,YAAQ,EAAEmmB,QAA9B;AAAwC,aAAS,EAAEyB;AAAnD,kBACC,2DAAC,KAAD;AAAO,cAAU,EAAC,OAAlB;AAA0B,kBAAc,EAAC,OAAzC;AAAiD,YAAQ,EAAEzB;AAA3D,kBACC,2DAAC,WAAD;AAAa,cAAU,EAAC;AAAxB,kBACC,2DAAC,oEAAD;AAAS,OAAG,EAAC;AAAb,kBACC,2DAAC,oEAAD;AAAS,SAAK,EAAE59B,CAAC,CAAC,YAAD,EAAe,YAAf,CAAjB;AAA+C,aAAS,EAAC;AAAzD,kBACC,2DAAC,UAAD;AAAY,QAAI,EAAC,sBAAjB;AAAwC,WAAO,EAAEP,yDAAcA;AAA/D,IADD,CADD,CADD,eAMC,2DAAC,qDAAD,OAND,eAOC,2DAAC,OAAD;AAAS,WAAO,EAAE;AAAE0iB,MAAAA,GAAG,EAAE;AAAP;AAAlB,KACE,oBAAAyd,MAAM,CAACnoB,OAAD,CAAN,6FAAiB4C,OAAjB,gFAA0BwlB,aAA1B,kBACA,2DAAC,oEAAD;AAAS,SAAK,EAAC;AAAf,kBACC,2DAAC,oEAAD;AAAS,SAAK,EAAE7/B,CAAC,CAAC,gBAAD,EAAmB,aAAnB,CAAjB;AAAoD,aAAS,EAAC;AAA9D,kBACC,2DAAC,uEAAD;AAAY,QAAI,EAAE,sBAAlB;AAA0C,WAAO,EAAE8+B,sDAAWA;AAA9D,IADD,CADD,CAFF,eAQC,2DAAC,oEAAD;AAAS,SAAK,EAAC;AAAf,kBACC,2DAAC,oEAAD;AACC,SAAK,EACJlB,QAAQ,GAAG59B,CAAC,CAAC,cAAD,EAAiB,cAAjB,CAAJ,GAAuCA,CAAC,CAAC,eAAD,EAAkB,eAAlB,CAFlD;AAIC,aAAS,EAAC;AAJX,kBAMC,2DAAC,uEAAD;AACC,QAAI,EAAE49B,QAAQ,GAAG,iBAAH,GAAuB,eADtC;AAEC,WAAO,EAAEA,QAAQ,GAAGmB,uDAAH,GAAkBF,uDAAYA;AAFhD,IAND,CADD,CARD,eAqBC,2DAAC,oEAAD;AAAS,SAAK,EAAE7+B,CAAC,CAAC,kBAAD,EAAqB,qBAArB,CAAjB;AAA8D,aAAS,EAAC;AAAxE,kBACC,2DAAC,uEAAD;AAAY,QAAI,EAAC,cAAjB;AAAgC,WAAO,EAAE4+B,yDAAcA;AAAvD,IADD,CArBD,CAPD,CADD,eAkCC,2DAAC,oEAAD;AAAS,SAAK,EAAE;AAAEr9B,MAAAA,MAAM,EAAE;AAAV;AAAhB,IAlCD,eAmCC,2DAAC,oBAAD;AAAsB,sBAAkB;AAAxC,KACEV,2CAAG,CAAC++B,MAAD,EAAS,UAACE,CAAD;AAAA,wBACZ,2DAAC,4CAAD;AAAU,SAAG,EAAEA,CAAC,CAAC36B,EAAjB;AAAqB,WAAK,EAAE26B;AAA5B,MADY;AAAA,GAAT,CADL,CAnCD,CADD,CADD;AA6CA,CAjDM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC3EP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAQA;AACA;AACA;AAEO,IAAMb,QAAY,GAAG,SAAfA,QAAe,GAAM;AACjC,wBAAYjzB,6DAAc,EAA1B;AAAA;AAAA,MAAOhM,CAAP;;AACA,uBAAsCg/B,4DAAa,EAAnD;AAAA,MAAQY,MAAR,kBAAQA,MAAR;AAAA,MAAgBnoB,OAAhB,kBAAgBA,OAAhB;AAAA,MAAyBmmB,QAAzB,kBAAyBA,QAAzB;;AACA,MAAMsC,eAAe,GAAG9Y,6CAAM,CAAC,IAAD,CAA9B;;AACA,wBAAiD4Y,+EAAc,CAACE,eAAD,EAAkBtC,QAAlB,CAA/D;AAAA;AAAA,MAAOuC,eAAP;AAAA,MAAwBC,qBAAxB;;AAEAL,EAAAA,sDAAe,CAAC,YAAM;AACrBK,IAAAA,qBAAqB,GADA,CAErB;AACA,GAHc,EAGZ,CAACR,MAAD,EAAShC,QAAT,EAAmBsC,eAAe,CAACzoB,OAAnC,CAHY,CAAf;AAKA,sBACC,2DAAC,gEAAD;AAAK,QAAI,EAAC,QAAV;AAAmB,UAAM,EAAC,MAA1B;AAAiC,iBAAa,EAAC,YAA/C;AAA4D,sBAAkB;AAA9E,kBACC,2DAAC,gEAAD;AACC,OAAG,EAAEyoB,eADN;AAEC,UAAM,EAAC,MAFR;AAGC,iBAAa,EAAC,YAHf;AAIC,SAAK,EAAE;AAAE1+B,MAAAA,QAAQ,EAAE;AAAZ,KAJR;AAKC,SAAK,EAAC;AALP,KAOEo+B,MAAM,IACN/+B,2CAAG,CAAC++B,MAAD,EAAS,UAACS,GAAD;AAAA,wBACX,2DAAC,mDAAD;AAAa,SAAG,EAAEA,GAAG,CAACl7B,EAAtB;AAA0B,QAAE,EAAEk7B,GAAG,CAACl7B,EAAlC;AAAsC,WAAK,EAAEk7B,GAAG,CAAC3rB,KAAjD;AAAwD,UAAI,EAAE2rB,GAAG,CAACv6B;AAAlE,MADW;AAAA,GAAT,CARL,CADD,EAaEq6B,eAAe,GAAG,CAAlB,iBACA,uIACC,2DAAC,sEAAD;AAAW,SAAK,EAAC,KAAjB;AAAuB,WAAO,EAAE;AAAEnZ,MAAAA,UAAU,EAAE,YAAd;AAA4B/C,MAAAA,QAAQ,EAAE;AAAtC;AAAhC,kBACC,2DAAC,sEAAD;AAAW,SAAK,EAAC,KAAjB;AAAuB,UAAM,EAAC,MAA9B;AAAqC,cAAU,EAAC;AAAhD,IADD,CADD,eAIC,2DAAC,oEAAD;AAAS,SAAK,EAAEjkB,CAAC,CAAC,iBAAD,EAAoB,iBAApB,CAAjB;AAAyD,aAAS,EAAC;AAAnE,kBACC,2DAAC,qEAAD;AACC,SAAK,EAAC,KADP;AAEC,SAAK,EAAE;AAAEk0B,MAAAA,QAAQ,EAAE;AAAZ,KAFR;AAGC,SAAK,EAAErzB,2CAAG,CAAC+oB,6CAAK,CAACnc,MAAM,CAACC,MAAP,CAAckyB,MAAd,CAAD,EAAwB,CAACO,eAAzB,CAAN,EAAiD,UAACE,GAAD;AAAA,aAAU;AACpEl7B,QAAAA,EAAE,EAAEk7B,GAAG,CAACl7B,EAD4D;AAEpEK,QAAAA,KAAK,EAAE66B,GAAG,CAAC3rB,KAFyD;AAGpE5O,QAAAA,IAAI,EAAEu6B,GAAG,CAACv6B,IAH0D;AAIpEyf,QAAAA,KAAK,EAAE;AAAA,iBAAM5lB,8DAAe,CAAC0gC,GAAG,CAACl7B,EAAL,CAArB;AAAA,SAJ6D;AAKpE8c,QAAAA,QAAQ,EAAEoe,GAAG,CAACl7B,EAAJ,KAAWsS;AAL+C,OAAV;AAAA,KAAjD;AAHX,kBAWC,2DAAC,mEAAD;AAAQ,QAAI,EAAC,OAAb;AAAqB,SAAK,EAAC,WAA3B;AAAuC,SAAK,aAAM0oB,eAAN,CAA5C;AAAqE,WAAO,EAAEpiB,wCAAIA;AAAlF,IAXD,CADD,CAJD,CAdF,CADD;AAsCA,CAjDM;;;;;;;;;;;;;;;;;;;;;;;;;ACpBP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAUA;AAEA,IAAMuiB,YAAY,GAAGhgB,6DAAM,CAACH,gEAAD,CAAT;AAAA;AAAA;AAAA,+HAKG;AAAA,MAAGxR,KAAH,QAAGA,KAAH;AAAA,MAAUY,MAAV,QAAUA,MAAV;AAAA,SACnBA,MAAM,GAAGZ,KAAK,CAACQ,OAAN,CAAcoxB,KAAd,CAAoBlxB,OAAvB,GAAiCV,KAAK,CAACQ,OAAN,CAAcwR,KAAd,CAAoBtR,OADxC;AAAA,CALH,CAAlB;AAWA,IAAMmxB,eAAe,GAAGlgB,6DAAM,CAACJ,sEAAD,CAAT;AAAA;AAAA;AAAA,2DAGN;AAAA,MAAGvR,KAAH,SAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAcoxB,KAAd,CAAoBlxB,OAA3C;AAAA,CAHM,EAIV;AAAA,MAAGV,KAAH,SAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACC,KAAN,CAAY6vB,OAAZ,CAAoB3vB,UAA3C;AAAA,CAJU,CAArB;AAOO,IAAMmxB,WAA4D,GAAG,SAA/DA,WAA+D,QAItE;AAAA,MAHL96B,EAGK,SAHLA,EAGK;AAAA,MAFLW,IAEK,SAFLA,IAEK;AAAA,MADL4O,KACK,SADLA,KACK;AACL,MAAM+C,OAAO,GAAGunB,4DAAa,CAAC,UAAC79B,CAAD;AAAA,WAAOA,CAAC,CAACsW,OAAT;AAAA,GAAD,CAA7B;;AACA,wBAAYzL,6DAAc,EAA1B;AAAA;AAAA,MAAOhM,CAAP;;AACA,MAAMuf,OAAO,GAAGnlB,kDAAW,CAAC;AAAA,WAAMuF,8DAAe,CAACwF,EAAD,CAArB;AAAA,GAAD,EAA4B,CAACA,EAAD,CAA5B,CAA3B;AACA,MAAMs7B,QAAQ,GAAGrmC,kDAAW,CAC3B,UAACgpB,EAAD,EAAQ;AACPA,IAAAA,EAAE,CAAC0a,eAAH;AACA7+B,IAAAA,yDAAU,CAACkG,EAAD,CAAV;AACA,GAJ0B,EAK3B,CAACA,EAAD,CAL2B,CAA5B;AAQA,sBACC,2DAAC,sEAAD;AAAW,eAAW,EAAC,KAAvB;AAA6B,SAAK,EAAC,KAAnC;AAAyC,YAAQ,EAAC;AAAlD,KACEsS,OAAO,KAAKtS,EAAZ,iBAAkB,2DAAC,eAAD,OADpB,eAEC,2DAAC,YAAD;AAAc,UAAM,EAAEsS,OAAO,KAAKtS,EAAlC;AAAsC,WAAO,EAAE;AAAEgd,MAAAA,GAAG,EAAE;AAAP;AAA/C,kBACC,2DAAC,gEAAD;AACC,UAAM,EAAC,MADR;AAEC,WAAO,EAAE5C,OAFV;AAGC,sBAAkB,MAHnB;AAIC,iBAAa,EAAC,YAJf;AAKC,QAAI,EAAC;AALN,kBAOC,2DAAC,iEAAD;AAAM,QAAI,EAAEzZ,IAAZ;AAAkB,QAAI,EAAC;AAAvB,IAPD,eAQC,2DAAC,oEAAD;AAAS,SAAK,EAAC;AAAf,IARD,eASC,2DAAC,oEAAD;AAAS,SAAK,EAAE4O,KAAhB;AAAuB,aAAS,EAAC,KAAjC;AAAuC,YAAQ,EAAC;AAAhD,kBACC,2DAAC,iEAAD;AACC,QAAI,EAAC,QADN;AAEC,UAAM,EAAC,SAFR;AAGC,SAAK,EAAE+C,OAAO,KAAKtS,EAAZ,GAAiB,MAAjB,GAA0B,WAHlC;AAIC,YAAQ,EAAC;AAJV,KAMEuP,KANF,CADD,CATD,CADD,eAqBC,2DAAC,oEAAD;AAAS,SAAK,EAAC;AAAf,IArBD,eAsBC,2DAAC,oEAAD;AAAS,SAAK,EAAE1U,CAAC,CAAC,iBAAD,EAAoB,WAApB,CAAjB;AAAmD,aAAS,EAAC;AAA7D,kBACC,2DAAC,uEAAD;AACC,aAAS,EAAC,WADX;AAEC,QAAI,EAAC,OAFN;AAGC,WAAO,EAAEygC,QAHV;AAIC,SAAK,EAAE;AAAEhC,MAAAA,OAAO,EAAE,KAAX;AAAkBxN,MAAAA,KAAK,EAAE,MAAzB;AAAiC1vB,MAAAA,MAAM,EAAE;AAAzC;AAJR,IADD,CAtBD,CAFD,CADD;AAoCA,CApDM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvCP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,IAAMo+B,cAAc,GAAGrf,wEAAH;AAAA;AAAA;AAAA,0NACR,UAACtK,KAAD;AAAA,SAAoBA,KAAK,CAACtQ,IAAN,GAAa,OAAb,GAAuB,MAA3C;AAAA,CADQ,EAcE;AAAA,MAAGiJ,KAAH,QAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAcoxB,KAAd,CAAoBlxB,OAA3C;AAAA,CAdF,CAApB;AAmBO,IAAM6vB,QAA8B,GAAG,SAAjCA,QAAiC,QAAe;AAAA,MAAZn4B,KAAY,SAAZA,KAAY;AAC5D,MAAM0Q,OAAO,GAAGunB,4DAAa,CAAC,UAAC79B,CAAD;AAAA,WAAOA,CAAC,CAACsW,OAAT;AAAA,GAAD,CAA7B,CAD4D,CAE5D;;AACA,MAAMlL,OAAO,GAAG5L,8CAAO,CAAC;AAAA,WAAMggC,4DAAmB,CAAC;AAAEE,MAAAA,cAAc,EAAE,CAAC95B,KAAK,CAAC0N,GAAP;AAAlB,KAAD,CAAzB;AAAA,GAAD,EAA6D,EAA7D,CAAvB;AACA,MAAMqsB,UAAU,GAAGhgC,uDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQK,KAAf;AAAA,GAAD,CAA9B;AACA,MAAMg6B,aAAa,GAAGr1B,6DAAU,EAAhC;AACA,MAAMhJ,KAAK,GAAG/B,8CAAO,CAAC,YAAM;AAC3B,QAAMwmB,IAAI,GAAGxS,4CAAI,CAACmsB,UAAD,EAAa,UAACtX,CAAD;AAAA,aAAOA,CAAC,CAACrkB,EAAF,KAAS4B,KAAK,CAAC0N,GAAf,IAAsBjB,kDAAU,CAACzM,KAAK,CAAC0N,GAAP,EAAY+U,CAAC,CAAC9mB,KAAd,CAAvC;AAAA,KAAb,CAAjB;AACAlI,IAAAA,OAAO,CAACuP,GAAR,CAAYod,IAAZ,EAAkBpgB,KAAK,CAAC0N,GAAxB;AACA,QAAI0S,IAAJ,EACC,oBACC,2DAAC,oDAAD;AAAO,SAAG,EAAEA,IAAI,CAAChiB,EAAjB;AAAqB,UAAI,EAAEgiB,IAAI,CAACzkB;AAAhC,oBACC,2DAAC,sEAAD;AAAoB,SAAG,EAAEykB,IAAI,CAAChiB,EAA9B;AAAkC,SAAG,EAAEgiB,IAAI,CAAC/hB;AAA5C,oBACC,2DAAC,wDAAD;AAAe,QAAE,EAAE2B,KAAK,CAAC5B;AAAzB,oBACC,2DAAC,IAAD,CAAM,SAAN;AAAgB,mBAAa,EAAE47B;AAA/B,MADD,CADD,CADD,CADD;AASD,WAAO,IAAP;AACA,GAdoB,EAclB,CAACh6B,KAAK,CAAC5B,EAAP,EAAW4B,KAAK,CAAC0N,GAAjB,EAAsBqsB,UAAtB,EAAkCC,aAAlC,CAdkB,CAArB;AAeAz1B,EAAAA,gDAAS,CAAC,YAAM;AACf,QAAM01B,QAAQ,GAAGz0B,OAAO,CAAC00B,MAAR,CAAe,iBAAkB;AAAA,UAAf3tB,QAAe,SAAfA,QAAe;;AACjD,UAAI,UAAGA,QAAQ,CAACC,QAAZ,SAAuBD,QAAQ,CAACkC,MAAhC,SAAyClC,QAAQ,CAACmC,IAAlD,MAA6D1O,KAAK,CAAC0N,GAAvE,EAA4E;AAC3EvV,QAAAA,0DAAW,CAAC6H,KAAK,CAAC5B,EAAP,EAAW;AAAEsP,UAAAA,GAAG,YAAKnB,QAAQ,CAACC,QAAd,SAAyBD,QAAQ,CAACkC,MAAlC,SAA2ClC,QAAQ,CAACmC,IAApD;AAAL,SAAX,CAAX;AACA;AACD,KAJgB,CAAjB;AAKA,WAAO,YAAM;AACZurB,MAAAA,QAAQ;AACR,KAFD;AAGA,GATQ,EASN,CAACj6B,KAAK,CAAC0N,GAAP,EAAY1N,KAAK,CAAC5B,EAAlB,EAAsBoH,OAAtB,CATM,CAAT;AAWAjB,EAAAA,gDAAS,CAAC,YAAM;AACf,QAAM41B,CAAC,GAAG30B,OAAO,CAAC+G,QAAlB;;AACA,QAAI,UAAG4tB,CAAC,CAAC3tB,QAAL,SAAgB2tB,CAAC,CAAC1rB,MAAlB,SAA2B0rB,CAAC,CAACzrB,IAA7B,MAAwC1O,KAAK,CAAC0N,GAAlD,EAAuD;AACtDlI,MAAAA,OAAO,CAACtF,IAAR,CAAaF,KAAK,CAAC0N,GAAnB;AACA;AACD,GALQ,EAKN,CAAC1N,KAAK,CAAC0N,GAAP,EAAYlI,OAAZ,CALM,CAAT;AAOA,sBACC,2DAAC,cAAD;AAAgB,QAAI,EAAEkL,OAAO,KAAK1Q,KAAK,CAAC5B;AAAxC,kBACC,2DAAC,qDAAD;AAAQ,WAAO,EAAEoH;AAAjB,KAA2B7J,KAA3B,CADD,CADD;AAKA,CA5CM;;;;;;;;;;;;;;;;;;;;ACnCP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA,IAAM89B,eAAe,GAAGlgB,wEAAH;AAAA;AAAA;AAAA,8KAOA;AAAA,MAAG3R,KAAH,QAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAckS,KAAd,CAAoBhS,OAA3C;AAAA,CAPA,EAUC;AAAA,MAAGV,KAAH,SAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAckS,KAAd,CAAoB/R,KAA3C;AAAA,CAVD,CAArB;AAcA,IAAM6xB,MAAM,GAAG7gB,wEAAH;AAAA;AAAA;AAAA,mUAYS;AAAA,MAAG3R,KAAH,SAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAckS,KAAd,CAAoBhS,OAA3C;AAAA,CAZT,EAcS;AAAA,MAAG6S,IAAH,SAAGA,IAAH;AAAA,SAAuBA,IAAI,GAAG,CAAH,GAAO,CAAC,CAAnC;AAAA,CAdT,EAgBU;AAAA,MAAGvT,KAAH,SAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAckS,KAAd,CAAoB/R,KAA3C;AAAA,CAhBV,EAmBU;AAAA,MAAGX,KAAH,SAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAckS,KAAd,CAAoB9R,MAA3C;AAAA,CAnBV,CAAZ;AAuBO,IAAM6xB,SAAoE,GAAG,SAAvEA,SAAuE;AAAA,MACnFlf,IADmF,SACnFA,IADmF;AAAA,MAEnF3C,OAFmF,SAEnFA,OAFmF;AAAA,sBAInF,2DAAC,eAAD,qBACC,2DAAC,MAAD;AAAQ,WAAO,EAAEA,OAAjB;AAA0B,QAAI,EAAE2C;AAAhC,kBACC,2DAAC,iEAAD;AAAM,QAAI,EAAC,QAAX;AAAoB,QAAI,EAAC;AAAzB,IADD,CADD,CAJmF;AAAA,CAA7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/CP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AAEO,IAAMqf,uBAA0E,GAAG,SAA7EA,uBAA6E,OAGpF;AAAA;;AAAA,MAFL5b,WAEK,QAFLA,WAEK;AAAA,MADLrS,QACK,QADLA,QACK;;AACL,wBAAYtH,8DAAc,EAA1B;AAAA;AAAA,MAAOhM,CAAP;;AACA,MAAMwhC,OAAO,GAAGnlC,sEAAU,CAAC;AAAEspB,IAAAA,WAAW,EAAXA,WAAF;AAAerS,IAAAA,QAAQ,EAARA;AAAf,GAAD,EAA4BtB,yDAA5B,CAA1B;;AACA,kBAAwBpE,gDAAQ,CAAC,KAAD,CAAhC;AAAA;AAAA,MAAOsU,IAAP;AAAA,MAAamD,OAAb;;AACA,MAAMoc,aAAa,GAAG9gC,+CAAO,CAC5B;AAAA;;AAAA,WACC6gC,OADD,aACCA,OADD,wCACCA,OAAO,CAAE7sB,IADV,kDACC,mBAAA6sB,OAAO,EACN,UAACE,CAAD;AAAA,aAAO,CAACA,CAAC,CAACC,KAAF,MAAYhc,WAAZ,aAAYA,WAAZ,uBAAYA,WAAW,CAAExgB,EAAzB,KAA+Bu8B,CAAC,CAACC,KAAF,MAAYhc,WAAZ,aAAYA,WAAZ,uBAAYA,WAAW,CAAEvgB,GAAzB,CAAhC,KAAiEs8B,CAAC,CAACzgB,OAA1E;AAAA,KADM,CADR;AAAA,GAD4B,EAK5B,CAACugB,OAAD,EAAU7b,WAAV,aAAUA,WAAV,uBAAUA,WAAW,CAAEvgB,GAAvB,EAA4BugB,WAA5B,aAA4BA,WAA5B,uBAA4BA,WAAW,CAAExgB,EAAzC,CAL4B,CAA7B;AAOA,MAAMyE,IAAI,GAAG4W,uDAAU,EAAvB;AACA,MAAMohB,KAAK,GAAGjhC,+CAAO,CAAC;AAAA,WAAM0gC,gDAAO,CAACG,OAAD,EAAU,OAAV,CAAb;AAAA,GAAD,EAAkC,CAACA,OAAD,CAAlC,CAArB;AAEA,MAAMK,gBAAgB,4GACjBD,KAAK,qBAACjc,WAAD,aAACA,WAAD,uBAACA,WAAW,CAAEvgB,GAAd,+DAAqB,EAArB,CADY,2CACgB,EADhB,wFAElB3K,+CAAM,CACRmP,IADQ,EAER,UAACrJ,GAAD,EAAM6E,GAAN,EAAW2T,CAAX,EAAiB;AAAA;;AAChB,QAAI3T,GAAG,CAACrF,IAAJ,MAAa4lB,WAAb,aAAaA,WAAb,uBAAaA,WAAW,CAAEvgB,GAA1B,KAAiC,oBAAAw8B,KAAK,CAACx8B,GAAG,CAACrF,IAAL,CAAL,oEAAiBqiB,MAAjB,IAA0B,CAA/D,EAAkE;AACjE7hB,MAAAA,GAAG,CAAC0G,IAAJ,OAAA1G,GAAG,GAAM;AAAE2Y,QAAAA,IAAI,EAAE,SAAR;AAAmB1T,QAAAA,KAAK,EAAE,EAA1B;AAA8BL,QAAAA,EAAE,oBAAa4T,CAAb;AAAhC,OAAN,8FAA6D6oB,KAAK,CAACx8B,GAAG,CAACrF,IAAL,CAAlE,GAAH;AACA;;AACD,WAAOQ,GAAP;AACA,GAPO,EAQR,EARQ,CAFY,EAAtB;AAcA,MAAMowB,OAAO,GAAGv2B,mDAAW,CAAC,YAAM;AACjCirB,IAAAA,OAAO,CAAC,KAAD,CAAP;AACA,GAF0B,EAExB,EAFwB,CAA3B;AAGA,MAAMyc,MAAM,GAAG1nC,mDAAW,CAAC,YAAM;AAChCirB,IAAAA,OAAO,CAAC,IAAD,CAAP;AACA,GAFyB,EAEvB,EAFuB,CAA1B;AAGA,SAAOoc,aAAa,gBACnB,4DAAC,yEAAD;AACC,QAAI,EAAC,YADN;AAEC,cAAU,EAAC,SAFZ;AAGC,SAAK,0BAAEA,aAAF,aAAEA,aAAF,uBAAEA,aAAa,CAAEj8B,KAAjB,uEAA0BxF,CAAC,CAAC,KAAD,EAAQ,KAAR,CAHjC;AAIC,WAAO,EAAEyhC,aAAF,aAAEA,aAAF,uBAAEA,aAAa,CAAElc,KAJzB;AAKC,SAAK,EAAEsc,gBALR;AAMC,mBAAe,EAAE,CAACJ,aAAD,KAAkBA,aAAlB,aAAkBA,aAAlB,uBAAkBA,aAAa,CAAEhyB,QAAjC,CANlB;AAOC,qBAAiB,EAAE,EAACoyB,gBAAD,aAACA,gBAAD,eAACA,gBAAgB,CAAEzf,MAAnB;AAPpB,IADmB,gBAWnB,4DAAC,sEAAD;AAAU,SAAK,EAAEyf,gBAAjB;AAAmC,WAAO,EAAElR,OAA5C;AAAqD,UAAM,EAAEmR;AAA7D,kBACC,4DAAC,oEAAD;AACC,QAAI,EAAC,YADN;AAEC,mBAAe,EAAC,SAFjB;AAGC,SAAK,EAAE9hC,CAAC,CAAC,KAAD,EAAQ,KAAR,CAHT;AAIC,QAAI,EAAEkiB,IAAI,GAAG,WAAH,GAAiB,aAJ5B;AAKC,WAAO,EAAEnE,yCAAIA;AALd,IADD,CAXD;AAqBA,CA1DM;AA4DP,IAAMgkB,kBAAkB,gBAAGnoC,kDAAA,CAAW2nC,uBAAX,CAA3B;AAEO,IAAMS,cAAkB,GAAG,SAArBA,cAAqB,GAAM;AACvC,MAAMC,YAAY,GAAGntB,8DAAW,EAAhC;AACA,MAAM6Q,WAAW,GAAG5oB,gEAAe,EAAnC;;AAEA,MAAMmlC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAAC5uB,QAAD;AAAA;;AAAA,2CACrBA,QADqB;AAExBC,MAAAA,QAAQ,EAAED,QAAF,aAAEA,QAAF,6CAAEA,QAAQ,CAAEC,QAAZ,uDAAE,mBAAoBiH,KAApB,CAA0B,GAA1B,EAA+BoP,KAA/B,CAAqC,CAArC,EAAwC,CAAxC,EAA2CtT,IAA3C,CAAgD,GAAhD,CAFc;AAGxBJ,MAAAA,GAAG,EAAE;AAHmB;AAAA,GAAzB;;AAMA,MAAM5C,QAAQ,GAAG3S,+CAAO,CAAC;AAAA,WAAMuhC,gBAAgB,CAACD,YAAD,CAAtB;AAAA,GAAD,EAAuC,CAACA,YAAD,CAAvC,CAAxB;AACA,sBAAO,4DAAC,kBAAD;AAAoB,eAAW,EAAEtc,WAAjC;AAA8C,YAAQ,EAAErS;AAAxD,IAAP;AACA,CAZM;;;;;;;;;;;;;;;;;;;;;;AChFP;AACA;AACA;AACA;AACA;;AAEA;CAIA;AACA;;AACA;AAEO,SAASpX,WAAT,GAAgC;AACtC,oBAAqBmP,iDAAU,CAAC82B,sDAAD,CAA/B;AAAA,MAAQC,QAAR,eAAQA,QAAR;;AACA,SAAOA,QAAP;AACA;AAEM,SAASjmC,eAAT,CAA4B+Z,GAA5B,EAAyCmsB,YAAzC,EAA4F;AAClG,kBAAsCz0B,+CAAQ,CAAI,YAAM;AACvD,QAAI;AACH,UAAM6I,IAAI,GAAGrO,MAAM,CAACk6B,YAAP,CAAoBC,OAApB,CAA4BrsB,GAA5B,CAAb;AACA,aAAOO,IAAI,GAAG4F,IAAI,CAACmmB,KAAL,CAAW/rB,IAAX,CAAH,GAAsB4rB,YAAjC;AACA,KAHD,CAGE,OAAO9nC,KAAP,EAAc;AACfC,MAAAA,OAAO,CAACD,KAAR,CAAcA,KAAd;AACA,aAAO8nC,YAAP;AACA;AACD,GAR6C,CAA9C;AAAA;AAAA,MAAOva,WAAP;AAAA,MAAoBC,cAApB;;AASA,MAAM0a,QAAQ,GAAG,SAAXA,QAAW,CAACtsB,KAAD,EAAqC;AACrD,QAAI;AACH,UAAMusB,YAAY,GAAGvsB,KAAK,YAAYwsB,QAAjB,GAA4BxsB,KAAK,CAAC2R,WAAD,CAAjC,GAAiD3R,KAAtE;AACA4R,MAAAA,cAAc,CAAC2a,YAAD,CAAd;AACAJ,MAAAA,YAAY,CAACM,OAAb,CAAqB1sB,GAArB,EAA0BmG,IAAI,CAACC,SAAL,CAAeomB,YAAf,CAA1B;AACA,KAJD,CAIE,OAAOnoC,KAAP,EAAc;AACfC,MAAAA,OAAO,CAACD,KAAR,CAAcA,KAAd;AACA;AACD,GARD;;AASA,SAAO,CAACutB,WAAD,EAAc2a,QAAd,CAAP;AACA;;;;;;;;;;;;;;;;;;;;ACvCD;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;;AAEA,IAAMK,oBAA+C,GAAG,SAAlDA,oBAAkD,OAAkB;AAAA,MAAf5oC,QAAe,QAAfA,QAAe;AACzE,MAAM6oC,UAAU,GAAGF,8EAAa,EAAhC;AAEA,MAAM1sB,KAAK,GAAGxV,8CAAO,CACpB;AAAA,WAAO;AACNyhC,MAAAA,QAAQ,EAAEW,UAAU,KAAK;AADnB,KAAP;AAAA,GADoB,EAIpB,CAACA,UAAD,CAJoB,CAArB;AAOA,sBAAO,2DAAC,+DAAD;AAAuB,SAAK,EAAE5sB;AAA9B,KAAsCjc,QAAtC,CAAP;AACA,CAXD;;AAaA,iEAAe4oC,oBAAf;;;;;;;;;;;;;;;;;ACvBA;AACA;AACA;AACA;AACA;AAEA;AAEA,IAAMX,YAAY,gBAAGx0B,oDAAa,CAAC;AAAEy0B,EAAAA,QAAQ,EAAE;AAAZ,CAAD,CAAlC;AAEA,iEAAeD,YAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACVA;AACA;AACA;AACA;AACA;AAEA;AACA;AAUA;AACA;AACA;AACA;;AAEA,IAAMe,WAGJ,GAAG,SAHCA,WAGD,OAAsD;AAAA,MAAnDC,eAAmD,QAAnDA,eAAmD;AAAA,MAAlCC,iBAAkC,QAAlCA,iBAAkC;AAAA,MAAflpC,QAAe,QAAfA,QAAe;AAC1D,MAAM6oC,UAAU,GAAGF,8EAAa,EAAhC;AACA,MAAMQ,aAAa,GAAGviC,uDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQ8O,MAAR,CAAe4M,MAAf,GAAwB,CAA/B;AAAA,GAAD,CAAjC;AACA,sBACC,2DAAC,sEAAD;AACC,eAAW,EAAC,YADb;AAEC,cAAU,EAAC,OAFZ;AAGC,SAAK,EAAC,MAHP;AAIC,UAAM,EAAC,MAJR;AAKC,aAAS,EAAC,MALX;AAMC,aAAS,EAAC,MANX;AAOC,iBAAa,EAAC,YAPf;AAQC,WAAO,EAAE;AACR4E,MAAAA,UAAU,EAAE+b,UAAU,KAAK,SAAf,GAA2B,OAA3B,GAAqC,YADzC;AAER9e,MAAAA,QAAQ,EAAE;AAFF;AARV,kBAaC,2DAAC,oEAAD,qBACC,2DAAC,sEAAD;AAAW,eAAW,EAAC,YAAvB;AAAoC,SAAK,EAAC,KAA1C;AAAgD,YAAQ,EAAC,KAAzD;AAA+D,iBAAa,EAAC;AAA7E,kBACC,2DAAC,uEAAD;AAAY,QAAI,EAAC;AAAjB,kBACC,2DAAC,oEAAD;AAAS,SAAK,EAAC;AAAf,kBACC,2DAAC,uEAAD;AAAY,QAAI,EAAEkf,eAAe,GAAG,OAAH,GAAa,MAA9C;AAAsD,WAAO,EAAEC;AAA/D,IADD,CADD,CADD,eAMC,2DAAC,sEAAD;AAAW,SAAK,EAAE,GAAlB;AAAuB,UAAM,EAAE,EAA/B;AAAmC,kBAAc,EAAC;AAAlD,kBACC,2DAAC,yDAAD;AAAM,UAAM,EAAC;AAAb,IADD,CAND,eASC,2DAAC,oEAAD;AAAS,cAAU,EAAC;AAApB,kBACC,2DAAC,4DAAD,OADD,CATD,eAYC,2DAAC,uEAAD;AAAY,QAAI,EAAC;AAAjB,KAA4BC,aAAa,iBAAI,2DAAC,yDAAD,OAA7C,CAZD,CADD,eAeC,2DAAC,sEAAD;AAAW,eAAW,EAAC,YAAvB;AAAoC,SAAK,EAAC,KAA1C;AAAgD,iBAAa,EAAC;AAA9D,kBACC,2DAAC,uEAAD;AAAY,QAAI,EAAC;AAAjB,KAA4BnpC,QAA5B,CADD,eAEC,2DAAC,uEAAD;AAAY,QAAI,EAAC;AAAjB,kBACC,2DAAC,sEAAD;AACC,eAAW,EAAC,YADb;AAEC,iBAAa,EAAC,UAFf;AAGC,WAAO,EAAE;AAAEwd,MAAAA,KAAK,EAAE;AAAT;AAHV,IADD,CAFD,CAfD,CAbD,CADD;AA8CA,CApDD;;AAqDA,iEAAewrB,WAAf;;;;;;;;;;;;;;;;;;;;;;;;;AC3EA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;;AAMA,IAAMK,gBAA2C,GAAG,SAA9CA,gBAA8C;AAAA,MAAG9sB,IAAH,QAAGA,IAAH;AAAA,SACnDA,IAAI,CAAC+sB,SAAL,gBACC,2DAAC,sEAAD;AAAoB,OAAG,EAAE/sB,IAAI,CAACtR;AAA9B,kBACC,2DAAC,IAAD,CAAM,SAAN;AAAgB,YAAQ,EAAE,CAAC,CAACsR,IAAI,CAACmnB;AAAjC,IADD,CADD,GAII,IAL+C;AAAA,CAApD;;AAuBA,IAAM6F,uBAAyD,GAAG,SAA5DA,uBAA4D,QAG5D;AAAA,MAFLN,eAEK,SAFLA,eAEK;AAAA,MADLO,QACK,SADLA,QACK;AACL,MAAMn3B,OAAO,GAAGb,4DAAU,EAA1B;AACA,MAAMhF,KAAK,GAAG5F,uDAAW,CAAM,UAACK,CAAD;AAAA,WAC9B1G,8CAAM,CACL0G,CAAC,CAACsF,MADG,EAEL,UAAClG,GAAD,EAAsCiQ,GAAtC,EAA8C;AAC7C,UAAMyQ,OAAO,GAAGtM,4CAAI,CAACxT,CAAC,CAACuF,KAAF,CAAQC,UAAT,EAAqB,UAAC8P,IAAD;AAAA,eAAUA,IAAI,CAACtR,EAAL,KAAYqL,GAAG,CAACrL,EAA1B;AAAA,OAArB,CAApB;AACA,UAAMq+B,SAAS,GAAG7uB,4CAAI,CAACxT,CAAC,CAACuF,KAAF,CAAQE,YAAT,EAAuB,UAAC6P,IAAD;AAAA,eAAUA,IAAI,CAACtR,EAAL,KAAYqL,GAAG,CAACrL,EAA1B;AAAA,OAAvB,CAAtB;;AACA,UAAI8b,OAAO,IAAIA,OAAO,CAACpe,OAAvB,EAAgC;AAC/BtC,QAAAA,GAAG,CAAC0G,IAAJ,CAAS;AACR9B,UAAAA,EAAE,YAAKqL,GAAG,CAACpL,GAAT,UADM;AAERI,UAAAA,KAAK,EAAEyb,OAAO,CAACzb,KAFP;AAGRM,UAAAA,IAAI,EAAE,OAAOmb,OAAO,CAAC3b,SAAf,KAA6B,QAA7B,GAAwC2b,OAAO,CAAC3b,SAAhD,GAA4D,MAH1D;AAIRia,UAAAA,OAAO,EAAE;AAAA,mBAAMhT,OAAO,CAACtF,IAAR,YAAiBuJ,GAAG,CAAC9N,KAArB,EAAN;AAAA,WAJD;AAKRouB,UAAAA,KAAK,EAAE0S,SAAS,GACb,CACA;AACCr+B,YAAAA,EAAE,EAAEq+B,SAAS,CAACr+B,EADf;AAECK,YAAAA,KAAK,EAAEg+B,SAAS,CAACr+B,EAFlB;AAGCW,YAAAA,IAAI,EAAE,MAHP;AAIC09B,YAAAA,SAAS,EAAEA,SAAS,CAACl+B,SAJtB;AAKCq+B,YAAAA,eAAe,EAAEJ;AALlB,WADA,CADa,GAUb;AAfK,SAAT;AAiBA;;AACD,aAAOhjC,GAAP;AACA,KAzBI,EA0BL,EA1BK,CADwB;AAAA,GAAN,CAAzB;AA+BA,sBACC,2DAAC,sEAAD;AACC,UAAM,EAAC,MADR;AAEC,SAAK,EAAC,KAFP;AAGC,cAAU,EAAC,OAHZ;AAIC,SAAK,EAAE;AACNgF,MAAAA,QAAQ,EAAE,UADJ;AAENigB,MAAAA,IAAI,EAAE,CAFA;AAGN6J,MAAAA,GAAG,EAAE,CAHC;AAINuU,MAAAA,MAAM,EAAE;AAJF;AAJR,kBAWC,2DAAC,qEAAD;AAAU,eAAW,EAAC,YAAtB;AAAmC,QAAI,EAAET,eAAzC;AAA0D,aAAS,EAAC;AAApE,kBACC,2DAAC,sEAAD;AACC,SAAK,EAAE,MAAM,EAAN,GAAW,EADnB;AAEC,UAAM,EAAC,MAFR;AAGC,eAAW,EAAC,UAHb;AAIC,iBAAa,EAAC,eAJf;AAKC,SAAK,EAAE;AACNU,MAAAA,SAAS,EAAE,oBADL;AAENC,MAAAA,SAAS,EAAE;AAFL;AALR,kBAUC,2DAAC,sEAAD;AAAW,SAAK,EAAC,MAAjB;AAAwB,UAAM,EAAC,KAA/B;AAAqC,eAAW,EAAC,UAAjD;AAA4D,iBAAa,EAAC;AAA1E,kBACC,2DAAC,sEAAD;AAAW,SAAK,EAAEp9B;AAAlB,IADD,CAVD,eAaC,2DAAC,sEAAD;AAAW,SAAK,EAAC,MAAjB;AAAwB,UAAM,EAAC,KAA/B;AAAqC,eAAW,EAAC,UAAjD;AAA4D,iBAAa,EAAC;AAA1E,kBACC,2DAAC,sEAAD;AAAW,SAAK,EAAE,CAACg9B,QAAD;AAAlB,IADD,eAEC,2DAAC,oEAAD;AAAS,YAAQ,EAAC;AAAlB,IAFD,CAbD,CADD,CAXD,CADD;AAkCA,CAtED;;AAwEA,IAAMK,kBAAkB,gBAAGnqC,iDAAA,CAAW6pC,uBAAX,CAA3B;;AAMA,IAAMO,cAAuC,GAAG,SAA1CA,cAA0C,QAAyB;AAAA,MAAtBb,eAAsB,SAAtBA,eAAsB;AACxE,MAAMO,QAAQ,GAAG5mC,+DAAe,EAAhC;AACA,sBAAO,2DAAC,kBAAD;AAAoB,YAAQ,EAAE4mC,QAA9B;AAAwC,mBAAe,EAAEP;AAAzD,IAAP;AACA,CAHD;;AAKA,iEAAea,cAAf;;;;;;;;;;;;;;;;;;;;;;AC7HA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;CAEA;AACA;;AACA;;AAMA,IAAMG,kBAA+C,GAAG,SAAlDA,kBAAkD;AAAA,MAAGhB,eAAH,QAAGA,eAAH;AAAA,sBACvD,2DAAC,sEAAD;AACC,eAAW,EAAC,YADb;AAEC,cAAU,EAAC,OAFZ;AAGC,SAAK,EAAC,KAHP;AAIC,UAAM,EAAC,MAJR;AAKC,iBAAa,EAAC,YALf;AAMC,kBAAc,EAAC;AANhB,kBAQC,2DAAC,uEAAD;AAAY,QAAI,EAAC;AAAjB,kBACC,2DAAC,0DAAD,OADD,eAEC,2DAAC,4DAAD,OAFD,CARD,eAYC,2DAAC,uEAAD;AAAY,QAAI,EAAC;AAAjB,kBACC,2DAAC,yDAAD;AAAgB,mBAAe,EAAEA;AAAjC,IADD,CAZD,CADuD;AAAA,CAAxD;;AAmBA,iEAAegB,kBAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrCA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AAEA,IAAMG,oBAAoB,GAAGhkB,8DAAM,CAACJ,uEAAD,CAAT;AAAA;AAAA;AAAA,qCACC;AAAA,MAAGvR,KAAH,QAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAcoxB,KAAd,CAAoBlxB,OAA3C;AAAA,CADD,CAA1B;;AAIA,IAAMk1B,eAAmB,GAAG,SAAtBA,eAAsB,GAAM;AACjC,uBAA8BvF,6DAAa,EAA3C;AAAA,MAAQK,SAAR,kBAAQA,SAAR;AAAA,MAAmBO,MAAnB,kBAAmBA,MAAnB;;AACA,MAAIh/B,gDAAO,CAACg/B,MAAD,CAAX,EAAqB,OAAO,IAAP;AACrB,sBACC,4DAAC,wEAAD;AACC,aAAS,EAAC,SADX;AAEC,QAAI,EAAEP,SAAS,GAAG,WAAH,GAAiB,eAFjC;AAGC,WAAO,EAAEA,SAAS,GAAG3/B,wDAAH,GAAkBD,0DAHrC;AAIC,QAAI,EAAC;AAJN,IADD;AAQA,CAXD;;AAuBA,IAAM+kC,iBAA0C,GAAG,SAA7CA,iBAA6C;AAAA,MAAGrd,IAAH,SAAGA,IAAH;AAAA,MAAS5X,MAAT,SAASA,MAAT;AAAA,MAAiBgQ,OAAjB,SAAiBA,OAAjB;AAAA,sBAClD,4DAAC,qEAAD;AAAS,SAAK,EAAE4H,IAAI,CAAC3hB,KAArB;AAA4B,aAAS,EAAC,OAAtC;AAA8C,OAAG,EAAE2hB,IAAI,CAAChiB;AAAxD,kBACC,4DAAC,oDAAD;AAAW,SAAK,EAAEgiB,IAAI,CAAC1hB;AAAvB,KACE,OAAO0hB,IAAI,CAAC7hB,SAAZ,KAA0B,QAA1B,gBACA,4DAAC,wEAAD;AACC,QAAI,EAAE6hB,IAAI,CAAC7hB,SADZ;AAEC,mBAAe,EAAEiK,MAAM,GAAG,OAAH,GAAa,OAFrC;AAGC,aAAS,EAAEA,MAAM,GAAG,SAAH,GAAe,MAHjC;AAIC,WAAO,EAAEgQ,OAJV;AAKC,QAAI,EAAC,OALN;AAMC,uBAAiBhQ;AANlB,IADA,gBAUA,4DAAC,IAAD,CAAM,SAAN;AAAgB,UAAM,EAAEA;AAAxB,IAXF,CADD,CADkD;AAAA,CAAnD;;AAmBA,IAAMk1B,0BAA4D,GAAG,SAA/DA,0BAA+D;AAAA;;AAAA,MAAGtd,IAAH,SAAGA,IAAH;AAAA,sBACpE,4DAAC,qEAAD;AAAS,SAAK,EAAEA,IAAI,CAAC3hB,KAArB;AAA4B,aAAS,EAAC,OAAtC;AAA8C,OAAG,EAAE2hB,IAAI,CAAChiB;AAAxD,kBACC,4DAAC,uEAAD;AAAoB,OAAG,EAAEgiB,IAAI,CAAChiB,EAA9B;AAAkC,OAAG,EAAEgiB,IAAI,CAAC/hB;AAA5C,KACE,OAAO+hB,IAAI,CAAC7hB,SAAZ,KAA0B,QAA1B,gBACA,4DAAC,wEAAD;AACC,QAAI,EAAE6hB,IAAI,CAAC7hB,SADZ;AAEC,mBAAe,EAAC,OAFjB;AAGC,aAAS,EAAC,MAHX;AAIC,WAAO,mBAAE6hB,IAAI,CAAC5H,OAAP,yDAAkBxB,yCAJ1B;AAKC,QAAI,EAAC;AALN,IADA,gBASA,4DAAC,IAAD,CAAM,SAAN,OAVF,CADD,CADoE;AAAA,CAArE;;AAkBA,IAAM2mB,wBAAuD,GAAG,SAA1DA,wBAA0D,QAAqB;AAAA;;AAAA,MAAlB/e,WAAkB,SAAlBA,WAAkB;AACpF,MAAMgf,eAAe,GAAG7jC,wDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQC,UAAf;AAAA,GAAD,CAAnC;;AACA,kBAA4BiH,gDAAQ,CAAyB,EAAzB,CAApC;AAAA;AAAA,MAAOnH,MAAP;AAAA,MAAem+B,SAAf;;AACA,MAAMr4B,OAAO,GAAGb,6DAAU,EAA1B;AAEAJ,EAAAA,iDAAS,CAAC,YAAM;AACfs5B,IAAAA,SAAS,CAAC,UAAC1vB,CAAD;AAAA,aACTyvB,eAAe,CAAClqC,MAAhB,CAAuB,UAAC8F,GAAD,EAAMipB,CAAN,EAAY;AAClC;AACA,YAAI,CAACjpB,GAAG,CAACipB,CAAC,CAACrkB,EAAH,CAAR,EAAgB5E,GAAG,CAACipB,CAAC,CAACrkB,EAAH,CAAH,GAAYqkB,CAAC,CAAC9mB,KAAd;AAChB,eAAOnC,GAAP;AACA,OAJD,EAIG2U,CAJH,CADS;AAAA,KAAD,CAAT;AAOA,GARQ,EAQN,CAACyvB,eAAD,CARM,CAAT;AASAr5B,EAAAA,iDAAS,CAAC,YAAM;AACf,QAAIqa,WAAJ,EAAiB;AAChBif,MAAAA,SAAS,CAAC,UAAC1vB,CAAD;AAAA,+CACNA,CADM,6FAERyQ,WAAW,CAACxgB,EAFJ,YAEY0P,6CAAI,CAACtI,OAAO,CAAC+G,QAAR,CAAiBC,QAAlB,EAA4B,GAA5B,CAFhB,SAEmDhH,OAAO,CAAC+G,QAAR,CAAiBkC,MAFpE;AAAA,OAAD,CAAT;AAIA;AACD,GAPQ,EAON,CAACmQ,WAAD,EAAcpZ,OAAO,CAAC+G,QAAtB,EAAgCqxB,eAAhC,CAPM,CAAT;AAQA,MAAME,wBAAwB,GAAG/jC,wDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQQ,qBAAf;AAAA,GAAD,CAA5C;AACA,MAAM49B,WAAW,GAAGnkC,+CAAO,CAC1B;AAAA,WACCyjC,+CAAM,CACL76B,+CAAM,CAACs7B,wBAAD,EAA2B,UAACrb,CAAD;AAAA,aAAO6a,+DAAU,CAAC7a,CAAD,EAAI7D,WAAJ,CAAjB;AAAA,KAA3B,CADD,EAEL,UAFK,CADP;AAAA,GAD0B,EAM1B,CAACA,WAAD,EAAckf,wBAAd,CAN0B,CAA3B;;AAQA,MAAIz4B,sDAAa,IAAIuZ,WAAJ,aAAIA,WAAJ,wCAAIA,WAAW,CAAE/Y,UAAjB,kDAAI,sBAAyBm4B,cAA9C,EAA8D;AAC7D,WAAO,IAAP;AACA;;AACD,sBACC,4DAAC,oBAAD;AACC,SAAK,EAAE,EADR;AAEC,UAAM,EAAC,MAFR;AAGC,cAAU,EAAC,OAHZ;AAIC,eAAW,EAAC,UAJb;AAKC,iBAAa,EAAC,YALf;AAMC,kBAAc,EAAC;AANhB,kBAQC,4DAAC,iEAAD;AACC,iBAAa,EAAC,YADf;AAEC,kBAAc,EAAC,YAFhB;AAGC,eAAW,EAAC,UAHb;AAIC,sBAAkB,MAJnB;AAKC,QAAI,EAAC,QALN;AAMC,SAAK,EAAE;AACNC,MAAAA,SAAS,EAAE,KADL;AAEN;AACA;AACA;AACAlB,MAAAA,SAAS,EAAE;AALL;AANR,KAcEjjC,4CAAG,CAAC8jC,eAAD,EAAkB,UAACxd,IAAD;AAAA,WACrBA,IAAI,CAACtkB,OAAL,gBACC,4DAAC,iBAAD;AACC,SAAG,EAAEskB,IAAI,CAAChiB,EADX;AAEC,aAAO,EAAE;AAAA,eAAYoH,OAAO,CAACtF,IAAR,YAAiBR,MAAM,CAAC0gB,IAAI,CAAChiB,EAAN,CAAvB,EAAZ;AAAA,OAFV;AAGC,UAAI,EAAEgiB,IAHP;AAIC,YAAM,EAAE,CAAAxB,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW,CAAExgB,EAAb,MAAoBgiB,IAAI,CAAChiB;AAJlC,MADD,GAOI,IARiB;AAAA,GAAlB,CAdL,CARD,eAiCC,4DAAC,iEAAD;AACC,iBAAa,EAAC,UADf;AAEC,eAAW,EAAC,UAFb;AAGC,QAAI,EAAC,QAHN,CAIC;AACA;AACA;AAND;AAOC,SAAK,EAAE;AAAE6/B,MAAAA,SAAS,EAAE,KAAb;AAAoBlB,MAAAA,SAAS,EAAE;AAA/B;AAPR,KASEgB,WAAW,CAACjkC,GAAZ,CAAgB,UAAC2oB,CAAD;AAAA,wBAChB,4DAAC,0BAAD;AAA4B,UAAI,EAAEA,CAAlC;AAAqC,SAAG,EAAEA,CAAC,CAACrkB;AAA5C,MADgB;AAAA,GAAhB,CATF,eAYC,4DAAC,eAAD,OAZD,CAjCD,CADD;AAkDA,CApFD;;AAsFA,IAAM8/B,4BAA4B,gBAAGrrC,kDAAA,CAAW8qC,wBAAX,CAArC;;AAEA,IAAMT,eAAmB,GAAG,SAAtBA,eAAsB,GAAM;AACjC,MAAMte,WAAW,GAAG5oB,gEAAe,EAAnC;AACA,sBAAO,4DAAC,4BAAD;AAA8B,eAAW,EAAE4oB;AAA3C,IAAP;AACA,CAHD;;AAKA,iEAAese,eAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACjLA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA,IAAMkB,gBAAgB,GAAG7kB,6DAAM,CAACJ,uEAAD,CAAT;AAAA;AAAA;AAAA,8FAGZ;AAAA,MAAGklB,aAAH,QAAGA,aAAH;AAAA,SAAgCA,aAAa,GAAG,GAAH,GAAS,EAAtD;AAAA,CAHY,CAAtB;;AAQA,IAAMC,0BAAyD,GAAG,SAA5DA,0BAA4D,QAAqB;AAAA,MAAlB1f,WAAkB,SAAlBA,WAAkB;AACtF,MAAM2f,MAAM,GAAGJ,gEAAkB,CAAC,UAAC/jC,CAAD;AAAA,WAAOA,CAAC,CAACokC,iBAAT;AAAA,GAAD,CAAjC;AACA,MAAMC,SAAS,GAAGN,gEAAkB,CAAC,UAAC/jC,CAAD;AAAA,WAAOA,CAAC,CAACskC,oBAAT;AAAA,GAAD,CAApC;AACA,MAAMC,gBAAgB,GAAGtrC,kDAAW,CAAC;AAAA,WAAMorC,SAAS,CAAC,CAACF,MAAF,CAAf;AAAA,GAAD,EAA2B,CAACA,MAAD,EAASE,SAAT,CAA3B,CAApC;AACA,MAAMG,iBAAiB,GAAG7kC,uDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQE,YAAf;AAAA,GAAD,CAArC;AACA,MAAMg/B,0BAA0B,GAAG9kC,uDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQm/B,uBAAf;AAAA,GAAD,CAA9C;AACA,MAAMf,WAAW,GAAGnkC,8CAAO,CAC1B;AAAA,WACCyjC,8CAAM,CACL76B,8CAAM,CAACq8B,0BAAD,EAA6B,UAACpc,CAAD;AAAA,aAAO6a,8DAAU,CAAC7a,CAAD,EAAI7D,WAAJ,CAAjB;AAAA,KAA7B,CADD,EAEL,UAFK,CADP;AAAA,GAD0B,EAM1B,CAACA,WAAD,EAAcigB,0BAAd,CAN0B,CAA3B;AAQA,MAAMn2B,QAAQ,GAAG9O,8CAAO,CACvB;AAAA,WAAMiV,iDAAS,CAAC+vB,iBAAD,EAAoB,UAACxe,IAAD;AAAA,aAAUA,IAAI,CAAChiB,EAAL,MAAYwgB,WAAZ,aAAYA,WAAZ,uBAAYA,WAAW,CAAExgB,EAAzB,CAAV;AAAA,KAApB,CAAT,GAAsE,CAA5E;AAAA,GADuB,EAEvB,CAACwgB,WAAD,aAACA,WAAD,uBAACA,WAAW,CAAExgB,EAAd,EAAkBwgC,iBAAlB,CAFuB,CAAxB;AAIA,SAAOl2B,QAAQ,GAAG,IAAH,gBACd,uIACC,2DAAC,gBAAD;AACC,iBAAa,EAAE61B,MADhB;AAEC,QAAI,EAAC,MAFN;AAGC,UAAM,EAAC,MAHR;AAIC,eAAW,EAAC,UAJb;AAKC,iBAAa,EAAC,eALf;AAMC,WAAO,EAAEA,MAAM,GAAGrsB,SAAH,GAAeysB,gBAN/B;AAOC,SAAK,EAAE;AACN7B,MAAAA,SAAS,EAAE,oBADL;AAENC,MAAAA,SAAS,EAAE;AAFL;AAPR,kBAYC,2DAAC,uEAAD;AAAW,iBAAa,EAAC;AAAzB,kBACC,2DAAC,qDAAD,QACEjjC,2CAAG,CAAC8kC,iBAAD,EAAoB,UAACxe,IAAD;AAAA,wBACvB,2DAAC,oDAAD;AAAO,SAAG,EAAEA,IAAI,CAAChiB,EAAjB;AAAqB,UAAI,aAAMgiB,IAAI,CAACzkB,KAAX;AAAzB,oBACC,2DAAC,sEAAD;AAAoB,SAAG,EAAEykB,IAAI,CAAC/hB;AAA9B,oBACC,2DAAC,IAAD,CAAM,SAAN;AAAgB,cAAQ,EAAEkgC;AAA1B,MADD,CADD,CADuB;AAAA,GAApB,CADL,CADD,CAZD,eAuBC,2DAAC,uEAAD;AAAW,iBAAa,EAAC,UAAzB;AAAoC,UAAM,EAAC;AAA3C,KACER,WAAW,CAACjkC,GAAZ,CAAgB,UAACsmB,IAAD;AAAA,wBAChB,2DAAC,sEAAD;AAAoB,SAAG,EAAEA,IAAI,CAAChiB,EAA9B;AAAkC,SAAG,EAAEgiB,IAAI,CAAC/hB;AAA5C,oBACC,2DAAC,IAAD,CAAM,SAAN;AAAgB,cAAQ,EAAEkgC;AAA1B,MADD,CADgB;AAAA,GAAhB,CADF,CAvBD,CADD,eAgCC,2DAAC,iDAAD;AAAW,WAAO,EAAEI,gBAApB;AAAsC,QAAI,EAAEJ;AAA5C,IAhCD,CADD;AAoCA,CAtDD;;AAwDA,IAAMQ,qBAAqB,gBAAGlsC,iDAAA,CAAWyrC,0BAAX,CAA9B;;AAEA,IAAMnB,iBAAqB,GAAG,SAAxBA,iBAAwB,GAAM;AACnC,MAAMve,WAAW,GAAG5oB,+DAAe,EAAnC;AACA,sBAAO,2DAAC,qBAAD;AAAuB,eAAW,EAAE4oB;AAApC,IAAP;AACA,CAHD;;AAKA,iEAAeue,iBAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1FA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,IAAMgC,UAAU,GAAG5lB,yEAAH;AAAA;AAAA;AAAA,iJACD;AAAA,MAAG3R,KAAH,QAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAc2oB,KAAd,CAAoBzoB,OAA3C;AAAA,CADC,CAAhB;;AAYA,SAAS82B,kBAAT,GAAoC;AACnC,oBAA+B96B,iDAAU,CAAC+C,uEAAD,CAAzC;AAAA,MAAQG,kBAAR,eAAQA,kBAAR;;AACA,MAAMzH,QAAQ,GAAGjL,gEAAe,EAAhC;AACA,MAAM66B,iBAAiB,GAAG/1B,8CAAO,CAChC;AAAA;;AAAA,oBACCgU,4CAAI,oBAAC7N,QAAD,aAACA,QAAD,uBAACA,QAAQ,CAAEkP,KAAX,6DAAoB,EAApB,EAAwB;AAC3BjW,MAAAA,IAAI,EAAE,oBADqB;AAE3BoY,MAAAA,MAAM,EAAEpT,qDAAYA;AAFO,KAAxB,CADL,0CACC,MAGIqT,QAJL;AAAA,GADgC,EAMhC,CAACtR,QAAD,CANgC,CAAjC;AASAwE,EAAAA,gDAAS,CAAC,YAAM;AACfiD,IAAAA,kBAAkB,CAACmoB,iBAAD,CAAlB;AACA,GAFQ,EAEN,CAACA,iBAAD,EAAoBnoB,kBAApB,CAFM,CAAT;AAGA,SAAO,IAAP;AACA;;AAED,IAAM63B,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACC,oBAAD,EAAyC;AACpE,MAAMC,IAAI,GAAGp5B,gEAAe,CAAC,UAAC/L,CAAD;AAAA,WAAOA,CAAC,CAACka,aAAT;AAAA,GAAD,CAA5B;AACA/P,EAAAA,gDAAS,CAAC,YAAM;AACf,QAAIc,sDAAa,IAAI,CAACk6B,IAAlB,IAA0B,CAACD,oBAA/B,EAAqD;AACpDjtB,MAAAA,gEAAS;AACT;AACD,GAJQ,EAIN,CAACitB,oBAAD,EAAuBC,IAAvB,CAJM,CAAT;AAKA,CAPD;;AASA,IAAMC,cAA+E,GAAG,SAAlFA,cAAkF,QAGlF;AAAA,MAFLF,oBAEK,SAFLA,oBAEK;AAAA,MADLG,eACK,SADLA,eACK;;AACL,kBAA0C54B,+CAAQ,CAAC,KAAD,CAAlD;AAAA;AAAA,MAAO64B,aAAP;AAAA,MAAsBC,gBAAtB;;AACAN,EAAAA,mBAAmB,CAACC,oBAAD,CAAnB;AACA,sBACC,2DAAC,UAAD,qBACC,2DAAC,kBAAD,OADD,EAGE,EAAEj6B,sDAAa,IAAIo6B,eAAnB,kBACA,2DAAC,qDAAD;AACC,mBAAe,EAAEC,aADlB;AAEC,qBAAiB,EAAE;AAAA,aAAYC,gBAAgB,CAAC,CAACD,aAAF,CAA5B;AAAA;AAFpB,kBAIC,2DAAC,0DAAD,OAJD,CAJF,eAWC,2DAAC,iEAAD;AAAK,kBAAc,EAAC,OAApB;AAA4B,SAAK,EAAE;AAAElhC,MAAAA,QAAQ,EAAE,UAAZ;AAAwB2uB,MAAAA,QAAQ,EAAE;AAAlC;AAAnC,kBACC,2DAAC,6DAAD;AAAoB,mBAAe,EAAEuS;AAArC,IADD,eAEC,2DAAC,2DAAD,OAFD,eAGC,2DAAC,4DAAD,OAHD,CAXD,eAgBC,2DAAC,wEAAD;AAAY,QAAI,EAAC;AAAjB,kBACC,2DAAC,mEAAD,OADD,CAhBD,CADD;AAsBA,CA5BD;;AA8BA,IAAME,SAAS,gBAAG/sC,iDAAA,CAAW2sC,cAAX,CAAlB;;AAEA,IAAMr6B,SAAa,GAAG,SAAhBA,SAAgB,GAAM;AAAA;;AAC3B,MAAMyZ,WAAW,GAAG5oB,gEAAe,EAAnC;AACA,MAAMspC,oBAAoB,GAAG1gB,WAAH,aAAGA,WAAH,gDAAGA,WAAW,CAAE/Y,UAAhB,0DAAG,sBAAyBy5B,oBAAtD;AACA,MAAMG,eAAe,GAAG7gB,WAAH,aAAGA,WAAH,iDAAGA,WAAW,CAAE/Y,UAAhB,2DAAG,uBAAyB45B,eAAjD;AACA,sBACC,2DAAC,+DAAD,qBACC,2DAAC,wEAAD,qBACC,2DAAC,SAAD;AAAW,wBAAoB,EAAEH,oBAAjC;AAAuD,mBAAe,EAAEG;AAAxE,IADD,CADD,CADD;AAOA,CAXD;;AAaA,iEAAet6B,SAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC5GA;AACA;AACA;AACA;AACA;AAEA;AACA;AAQA;AAEO,IAAMxQ,cAAc,GAAG,SAAjBA,cAAiB;AAAA,SAAewR,uDAAe,CAAC,UAAC/L,CAAD;AAAA,WAAOA,CAAC,CAACkX,OAAT;AAAA,GAAD,CAA9B;AAAA,CAAvB;AACA,IAAM1c,eAAe,GAAG,SAAlBA,eAAkB,GAAsB;AACpD,MAAMknB,IAAI,GAAG3V,uDAAe,CAAC,UAAC/L,CAAD;AAAA,WAAOA,CAAC,CAACkX,OAAT;AAAA,GAAD,CAA5B;AACA,SAAO1X,8CAAO,CAAC;AAAA,WAAOkiB,IAAI,GAAG,CAACA,IAAD,CAAH,GAAuB,EAAlC;AAAA,GAAD,EAAwC,CAACA,IAAD,CAAxC,CAAd;AACA,CAHM;AAKA,IAAM9mB,aAAa,GAAG,SAAhBA,aAAgB;AAAA,SAC5BmR,uDAAe,CAAC,UAAC/L,CAAD;AAAA;;AAAA,8CAAOA,CAAC,CAACkX,OAAT,+CAAO,WAAW8E,MAAlB,iEAA4B;AAAEypB,MAAAA,OAAO,EAAE;AAAX,KAA5B;AAAA,GAAD,CADa;AAAA,CAAtB;AAGA,IAAM9qC,YAAY,GAAG,SAAfA,YAAe,CAAC4b,KAAD,EAAwD;AACnF,uBAAoB3b,aAAa,EAAjC;AAAA,MAAQ6qC,OAAR,kBAAQA,OAAR;;AACA,SAAOjmC,8CAAO,CACb;AAAA;;AAAA,oCAAMgU,4CAAI,CAACiyB,OAAD,EAAU,CAAC,OAAD,EAAUlvB,KAAV,CAAV,CAAV,0CAAM,MAAiC6L,MAAvC,uDAAkD,EAAlD;AAAA,GADa,EAEb,CAAC7L,KAAD,EAAQkvB,OAAR,CAFa,CAAd;AAIA,CANM;AAOA,IAAM/qC,eAAe,GAAG,SAAlBA,eAAkB;AAAA,SAAuBqR,uDAAe,CAAC,UAAC/L,CAAD;AAAA,WAAOA,CAAC,CAAC2F,QAAT;AAAA,GAAD,CAAtC;AAAA,CAAxB;AACA,IAAMlL,cAAc,GAAG,SAAjBA,cAAiB;AAAA,oCAAc2Z,IAAd;AAAcA,IAAAA,IAAd;AAAA;;AAAA,SAC7BrI,uDAAe,CAAC,UAAC/L,CAAD;AAAA,WAAO8d,2CAAG,CAAC9d,CAAC,CAAC2F,QAAH,EAAawP,4CAAI,CAACf,IAAD,EAAO,GAAP,CAAjB,CAAV;AAAA,GAAD,CADc;AAAA,CAAvB;AAGA,IAAMja,cAAc,GAAG,SAAjBA,cAAiB;AAAA,SAAe4R,4DAAA,GAA2BmL,OAA1C;AAAA,CAAvB;AACA,IAAM9c,eAAe,GAAG,SAAlBA,eAAkB;AAAA,SAAsB,CACpD2R,4DAAA,GAA2BmL,OADyB,CAAtB;AAAA,CAAxB;AAGA,IAAM5c,eAAe,GAAG,SAAlBA,eAAkB;AAAA,SAAuByR,4DAAA,GAA2BpG,QAAlD;AAAA,CAAxB;AACA,IAAMtL,cAAc,GAAG,SAAjBA,cAAiB;AAAA,qCAAc+Z,IAAd;AAAcA,IAAAA,IAAd;AAAA;;AAAA,SAC7B0J,2CAAG,CAAC/R,4DAAA,GAA2BpG,QAA5B,EAAsCwP,4CAAI,CAACf,IAAD,EAAO,GAAP,CAA1C,CAD0B;AAAA,CAAvB;AAGA,IAAMtZ,aAAa,GAAG,SAAhBA,aAAgB;AAAA;;AAAA,4DAC5BiR,4DAAA,GAA2BmL,OADC,2DAC5B,uBAAoC8E,MADR,yEACkB;AAAEypB,IAAAA,OAAO,EAAE;AAAX,GADlB;AAAA,CAAtB;AAGA,IAAM5qC,YAAY,GAAG,SAAfA,YAAe,CAAC0b,KAAD;AAAA;;AAAA,oCAC3B/C,4CAAI,CAAC1Y,aAAa,GAAG2qC,OAAjB,EAA0B,CAAC,OAAD,EAAUlvB,KAAV,CAA1B,CADuB,2CAC3B,OAAiD6L,MADtB,yDACiC,EADjC;AAAA,CAArB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChDP;AACA;AACA;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AAIA,IAAMsjB,iBAAiB,GAAG,SAApBA,iBAAoB,CACzB//B,QADyB;AAAA;;AAAA,SAEH;AACtByG,IAAAA,KAAK,EAAEzG,QAAQ,CAACyG,KAAT,CAAesL,MADA;AAEtBxL,IAAAA,KAAK,EAAEvG,QAAQ,CAACuG,KAAT,CAAewL,MAFA;AAGtB7C,IAAAA,KAAK,0BAAElP,QAAQ,CAACkP,KAAT,CAAeC,IAAjB,uEAAyB;AAHR,GAFG;AAAA,CAA1B;;AAQO,IAAMwG,gBAAgB,GAAG,SAAnBA,gBAAmB,OAc3B;AAAA,MAbJtX,EAaI,QAbJA,EAaI;AAAA,MAZJpF,IAYI,QAZJA,IAYI;AAAA,MAXJwN,KAWI,QAXJA,KAWI;AAAA,MAVJF,KAUI,QAVJA,KAUI;AAAA,MATJkL,UASI,QATJA,UASI;AAAA,MARJuuB,UAQI,QARJA,UAQI;AAAA,MAPJ9wB,KAOI,QAPJA,KAOI;AAAA,MANJlN,OAMI,QANJA,OAMI;AAAA,MALJqU,MAKI,QALJA,MAKI;AACJ,MAAMrW,QAAQ,GAAG+/B,iBAAiB,CAAC;AAAEt5B,IAAAA,KAAK,EAALA,KAAF;AAASF,IAAAA,KAAK,EAALA,KAAT;AAAgB2I,IAAAA,KAAK,EAALA;AAAhB,GAAD,CAAlC;AACA,SAAO;AACNqC,IAAAA,OAAO,EAAE;AACRlT,MAAAA,EAAE,EAAFA,EADQ;AAERpF,MAAAA,IAAI,EAAJA,IAFQ;AAGRuY,MAAAA,WAAW,EAAE/K,KAAK,CAACsL,MAAN,CAAaP,WAHlB;AAIRC,MAAAA,UAAU,EAAVA,UAJQ;AAKRuuB,MAAAA,UAAU,EAAVA,UALQ;AAMR3pB,MAAAA,MAAM,EAANA;AANQ,KADH;AASNrW,IAAAA,QAAQ,EAARA,QATM;AAUNgC,IAAAA,OAAO,EAAPA;AAVM,GAAP;AAYA,CA5BM;;;;;;;;;;;;;;;;;;;;;;;AChBP;AACA;AACA;AACA;AACA;AAEA;AAGO,IAAMoE,eAAe,GAAGuX,mDAAM,CAAe;AAAA,SAAO;AAC1DpJ,IAAAA,aAAa,EAAE,KAD2C;AAE1DhD,IAAAA,OAAO,EAAEY,SAFiD;AAG1DnQ,IAAAA,OAAO,EAAE,EAHiD;AAI1DhC,IAAAA,QAAQ,EAAE;AACTuG,MAAAA,KAAK,EAAE,EADE;AAETE,MAAAA,KAAK,EAAE,EAFE;AAGTyI,MAAAA,KAAK,EAAE;AAHE,KAJgD;AAS1D6E,IAAAA,SAAS,EAAE,CAT+C;AAU1DksB,IAAAA,oBAAoB,EAAE9Q,IAAI,CAAC+Q,GAAL;AAVoC,GAAP;AAAA,CAAf,CAA9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACTP;AACA;AACA;AACA;AACA;;AAEA;;AACA;AAEA;AACA;AACA;AAGO,IAAMpsC,MAAM,GAAG,SAATA,MAAS,CAACoG,KAAD;AAAA,SAAmB;AAAA,WAAsBF,mDAAW,CAAC,UAACK,CAAD;AAAA,aAAOA,CAAC,CAACyI,IAAF,CAAO5I,KAAP,CAAP;AAAA,KAAD,CAAjC;AAAA,GAAnB;AAAA,CAAf;AACA,IAAMimC,OAAO,GAAG,SAAVA,OAAU;AAAA,SAAsCnmC,mDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACyI,IAAT;AAAA,GAAD,CAAjD;AAAA,CAAhB;AACA,IAAM4W,UAAU,GAAG,SAAbA,UAAa,GAA6B;AACtD,MAAM5W,IAAI,GAAGq9B,OAAO,EAApB;AACA,SAAOtmC,8CAAO,CAAC;AAAA,WAAMyjC,8CAAM,CAACx6B,IAAD,EAAO,UAAC83B,CAAD;AAAA,aAAOA,CAAC,CAACwF,QAAT;AAAA,KAAP,CAAZ;AAAA,GAAD,EAAwC,CAACt9B,IAAD,CAAxC,CAAd;AACA,CAHM;AAIA,IAAMu9B,UAAU,GAAG,SAAbA,UAAa;AAAA,SACzB/C,8CAAM,CAACtjC,wDAAA,GAAuB8I,IAAxB,EAA8B,UAAC83B,CAAD;AAAA,WAAOA,CAAC,CAACwF,QAAT;AAAA,GAA9B,CADmB;AAAA,CAAnB;AAGA,IAAMxsC,MAAM,GAAG,SAATA,MAAS,CAACsG,KAAD;AAAA,SAAmB;AAAA,WAAsBF,wDAAA,GAAuB8I,IAAvB,CAA4B5I,KAA5B,CAAtB;AAAA,GAAnB;AAAA,CAAf;AACA,IAAMomC,OAAO,GAAG,SAAVA,OAAU;AAAA,SAAsCtmC,wDAAA,GAAuB8I,IAA7D;AAAA,CAAhB;AAEA,IAAM/O,aAAa,GAAG,SAAhBA,aAAgB,CAACmG,KAAD;AAAA,SAAmB;AAAA,WAC/CF,mDAAW,CAAC,UAACK,CAAD;AAAA,aAAOA,CAAC,CAACkmC,WAAF,CAAcrmC,KAAd,CAAP;AAAA,KAAD,CADoC;AAAA,GAAnB;AAAA,CAAtB;AAEA,IAAMrG,aAAa,GAAG,SAAhBA,aAAgB,CAACqG,KAAD;AAAA,SAAmB;AAAA,WAC/CF,wDAAA,GAAuBumC,WAAvB,CAAmCrmC,KAAnC,CAD+C;AAAA,GAAnB;AAAA,CAAtB;AAEA,IAAMsmC,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAsBxmC,wDAAA,GAAuBymC,KAA7C;AAAA,CAAjB;AACA,IAAMtyB,SAAS,GAAG,SAAZA,SAAY;AAAA,SAAgCnU,wDAAA,GAAuB2F,MAAvD;AAAA,CAAlB;AACA,IAAMuO,SAAS,GAAG,SAAZA,SAAY;AAAA,SAAgClU,mDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACsF,MAAT;AAAA,GAAD,CAA3C;AAAA,CAAlB;AACA,IAAM+gC,QAAQ,GAAG,SAAXA,QAAW,CAACriC,EAAD;AAAA,SAA0BrE,wDAAA,GAAuB2F,MAAvB,CAA8BtB,EAA9B,CAA1B;AAAA,CAAjB;AACA,IAAMsiC,QAAQ,GAAG,SAAXA,QAAW,CAACtiC,EAAD;AAAA,SAA0BrE,mDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACsF,MAAF,CAAStB,EAAT,CAAP;AAAA,GAAD,CAArC;AAAA,CAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClCP;AACA;AACA;AACA;AACA;AAEA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACPA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAgBA;AACA;;AAEA,IAAM4iC,UAAU,GAAG,SAAbA,UAAa,CAA2BjX,KAA3B,EAA4C3rB,EAA5C;AAAA,SAClBoE,+CAAM,CAACunB,KAAD,EAAQ,UAACra,IAAD;AAAA,WAAUA,IAAI,CAACtR,EAAL,KAAYA,EAAtB;AAAA,GAAR,CADY;AAAA,CAAnB;;AAGA,IAAM6iC,mBAAmB,GAAG,YAA5B;AACO,IAAMlnC,WAAW,GAAG2jB,oDAAM,CAAW,UAAC7F,GAAD,EAAMK,GAAN;AAAA,SAAe;AAC1DrS,IAAAA,UAAU,EAAE,KAD8C;AAE1DhD,IAAAA,IAAI,EAAE,EAFoD;AAG1Dy9B,IAAAA,WAAW,EAAE,EAH6C;AAI1DE,IAAAA,KAAK,EAAE;AACNU,MAAAA,MAAM,EAAE,EADF;AAENtQ,MAAAA,WAAW,EAAE,EAFP;AAGN5uB,MAAAA,aAAa,EAAE,EAHT;AAINhJ,MAAAA,IAAI,EAAE,mBAJA;AAKNmnC,MAAAA,QAAQ,EAAE,CAAC,CALL;AAMNp+B,MAAAA,OAAO,EAAE,EANH;AAONoQ,MAAAA,IAAI,EAAE,OAPA;AAQNpP,MAAAA,OAAO,EAAE,EARH;AASNhE,MAAAA,IAAI,EAAE,EATA;AAUN8c,MAAAA,OAAO,EAAE;AAVH,KAJmD;AAgB1D1hB,IAAAA,WAAW,EAAE,EAhB6C;AAiB1DuF,IAAAA,MAAM,EAAE,EAjBkD;AAkB1DC,IAAAA,KAAK,EAAE;AACNC,MAAAA,UAAU,EAAE,EADN;AAENC,MAAAA,YAAY,EAAE,EAFR;AAGNC,MAAAA,OAAO,EAAE,EAHH;AAINE,MAAAA,KAAK,EAAE,EAJD;AAKNmhC,MAAAA,UAAU,EAAE,EALN;AAMNphC,MAAAA,QAAQ,EAAE,EANJ;AAON0O,MAAAA,MAAM,EAAE,EAPF;AAQNtO,MAAAA,qBAAqB,EAAE,EARjB;AASN2+B,MAAAA,uBAAuB,EAAE;AATnB,KAlBmD;AA6B1DzjC,IAAAA,OAAO,EAAE;AACR8a,MAAAA,OAAO,EAAE,iBAACtT,IAAD,EAAgD;AACxDgV,QAAAA,GAAG,CAAC,UAACpW,KAAD;AAAA;;AAAA,iBAAY;AACfoB,YAAAA,IAAI,EAAEnP,+CAAM,CACXmP,IADW,EAEX,UAACrJ,GAAD,EAAM6E,GAAN;AAAA,qBACCA,GAAG,CAACrF,IAAJ,IAAYqF,GAAG,CAACrF,IAAJ,KAAagF,qDAAzB,mCAEMxE,GAFN,6FAGI6E,GAAG,CAACrF,IAHR,EAGe+nC,qDAAY,CAAC1iC,GAAD,CAH3B,KAKG7E,GANJ;AAAA,aAFW,EASX,EATW,CADG;AAYfgnC,YAAAA,KAAK,kCACD/+B,KAAK,CAAC++B,KADL,YAEA5yB,6CAAI,CAAC/K,IAAD,EAAO,UAACxE,GAAD;AAAA,qBAASA,GAAG,CAACrF,IAAJ,KAAagF,qDAAtB;AAAA,aAAP,CAFJ,yCAEkD,EAFlD,CAZU;AAgBfsiC,YAAAA,WAAW,EAAE5sC,+CAAM,CAACmP,IAAD,EAAO,UAACrJ,GAAD,EAAMiQ,GAAN;AAAA,qBAAeA,GAAG,CAACzQ,IAAJ,mCAAgBQ,GAAhB,6FAAsBiQ,GAAG,CAACzQ,IAA1B,EAAiC,EAAjC,KAAwCQ,GAAvD;AAAA,aAAP,EAAoE,EAApE;AAhBJ,WAAZ;AAAA,SAAD,CAAH;AAkBA,OApBO;AAqBRiC,MAAAA,aAAa,EACZ,uBAAC4C,GAAD;AAAA,eACA,UAACiV,OAAD,EAA4B;AAC3BuE,UAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,YAAAA,KAAK,CAAC6+B,WAAN,CAAkBjiC,GAAlB,IAAyBsiC,8CAAK,CAACl/B,KAAK,CAAC6+B,WAAN,CAAkBjiC,GAAlB,CAAD,EAAyBiV,OAAzB,CAA9B;AACA,WAFM,CADL,CAAH;AAKA,SAPD;AAAA,OAtBO;AA8BR;AACA5X,MAAAA,QAAQ,EAAE,kBAAC0lC,SAAD,EAA2C;AACpD,mBAAuBlpB,GAAG,EAA1B;AAAA,YAAQrS,UAAR,QAAQA,UAAR;;AACA,YAAIA,UAAU,IAAIu7B,SAAS,CAACzlC,KAAV,KAAoBkK,UAAtC,EAAkD;AACjD,iBAAOo7B,mBAAP;AACA;;AACDppB,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC/B,MAAN,CAAa0hC,SAAS,CAAChjC,EAAvB,IAA6BgjC,SAA7B;;AACA,cAAIA,SAAS,CAACxhC,UAAd,EAA0B;AACzB6B,YAAAA,KAAK,CAAC9B,KAAN,CAAYC,UAAZ,GAAyBy9B,+CAAM,CAC9ByD,kDAAS,CACR,CACC;AACCziC,cAAAA,GAAG,EAAE+iC,SAAS,CAAC/iC,GADhB;AAECD,cAAAA,EAAE,EAAEgjC,SAAS,CAAChjC,EAFf;AAGCzC,cAAAA,KAAK,EAAEylC,SAAS,CAACzlC,KAHlB;AAIC4C,cAAAA,SAAS,EAAE6iC,SAAS,CAACxhC,UAJtB;AAKClB,cAAAA,KAAK,EAAE0iC,SAAS,CAAC1iC,KALlB;AAMCF,cAAAA,QAAQ,EAAE4iC,SAAS,CAAC5iC,QANrB;AAOC1C,cAAAA,OAAO,EAAEslC,SAAS,CAACtlC,OAPpB;AAQC2C,cAAAA,KAAK,EAAE2iC,SAAS,CAAC3iC;AARlB,aADD,CADQ,EAaRgD,KAAK,CAAC9B,KAAN,CAAYC,UAbJ,EAcR,UAAC+6B,CAAD,EAAI5B,CAAJ;AAAA,qBAAmB4B,CAAC,CAACv8B,EAAF,KAAS26B,CAAC,CAAC36B,EAA9B;AAAA,aAdQ,CADqB,EAiB9B,UAjB8B,CAA/B;AAmBA;;AACD,cAAIgjC,SAAS,CAACvhC,YAAd,EAA4B;AAC3B4B,YAAAA,KAAK,CAAC9B,KAAN,CAAYE,YAAZ,GAA2BihC,kDAAS,CACnC,CACC;AACCziC,cAAAA,GAAG,EAAE+iC,SAAS,CAAC/iC,GADhB;AAECD,cAAAA,EAAE,EAAEgjC,SAAS,CAAChjC,EAFf;AAGCzC,cAAAA,KAAK,EAAEylC,SAAS,CAACzlC,KAHlB;AAIC4C,cAAAA,SAAS,EAAE6iC,SAAS,CAACvhC;AAJtB,aADD,CADmC,EASnC4B,KAAK,CAAC9B,KAAN,CAAYE,YATuB,EAUnC,UAAC86B,CAAD,EAAI5B,CAAJ;AAAA,qBAAmB4B,CAAC,CAACv8B,EAAF,KAAS26B,CAAC,CAAC36B,EAA9B;AAAA,aAVmC,CAApC;AAYA;;AACD,cAAIgjC,SAAS,CAACthC,OAAd,EAAuB;AACtB2B,YAAAA,KAAK,CAAC9B,KAAN,CAAYG,OAAZ,GAAsBghC,kDAAS,CAC9B,CACC;AACCziC,cAAAA,GAAG,EAAE+iC,SAAS,CAAC/iC,GADhB;AAECD,cAAAA,EAAE,EAAEgjC,SAAS,CAAChjC,EAFf;AAGCzC,cAAAA,KAAK,EAAEylC,SAAS,CAACzlC,KAHlB;AAIC4C,cAAAA,SAAS,EAAE6iC,SAAS,CAACthC;AAJtB,aADD,CAD8B,EAS9B2B,KAAK,CAAC9B,KAAN,CAAYG,OATkB,EAU9B,UAAC66B,CAAD,EAAI5B,CAAJ;AAAA,qBAAmB4B,CAAC,CAACv8B,EAAF,KAAS26B,CAAC,CAAC36B,EAA9B;AAAA,aAV8B,CAA/B;AAYA;AACD,SAnDM,CADL,CAAH;AAsDA,eAAOgjC,SAAS,CAAChjC,EAAjB;AACA,OA3FO;AA4FRxC,MAAAA,kBAAkB,EAAE,4BAACwC,EAAD,EAAatC,OAAb,EAAwC;AAC3D+b,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5B,cAAM4/B,GAAG,GAAGxyB,kDAAS,CAACpN,KAAK,CAAC9B,KAAN,CAAYC,UAAb,EAAyB,UAACwgB,IAAD;AAAA,mBAAUA,IAAI,CAAChiB,EAAL,KAAYA,EAAtB;AAAA,WAAzB,CAArB;;AACA,cAAIijC,GAAG,IAAI,CAAX,EAAc;AACb5/B,YAAAA,KAAK,CAAC9B,KAAN,CAAYC,UAAZ,CAAuByhC,GAAvB,EAA4BvlC,OAA5B,GAAsCA,OAAtC;AACA;AACD,SALM,CADL,CAAH;AAQA,OArGO;AAuGR;AACAC,MAAAA,WAAW,EAAE,qBAACqC,EAAD,EAAsB;AAClCyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC/B,MAAN,GAAekhC,6CAAI,CAACn/B,KAAK,CAAC/B,MAAP,EAAe,CAACtB,EAAD,CAAf,CAAnB;AACAqD,UAAAA,KAAK,CAAC9B,KAAN,CAAYC,UAAZ,GAAyBohC,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYC,UAAb,EAAyBxB,EAAzB,CAAnC;AACAqD,UAAAA,KAAK,CAAC9B,KAAN,CAAYE,YAAZ,GAA2BmhC,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYE,YAAb,EAA2BzB,EAA3B,CAArC;AACAqD,UAAAA,KAAK,CAAC9B,KAAN,CAAYG,OAAZ,GAAsBkhC,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYG,OAAb,EAAsB1B,EAAtB,CAAhC;AACA,SALM,CADL,CAAH;AAQA,OAjHO;AAkHR;AACApC,MAAAA,YAAY,EAAE,sBAACC,IAAD,EAA6B;AAC1C4b,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYK,KAAZ,GAAoB6gC,gDAAO,CAAC,CAAC5kC,IAAD,CAAD,EAASwF,KAAK,CAAC9B,KAAN,CAAYK,KAArB,EAA4B,IAA5B,CAA3B;AACA,SAFM,CADL,CAAH;AAKA,eAAO/D,IAAI,CAACmC,EAAZ;AACA,OA1HO;AA4HR;AACAlC,MAAAA,eAAe,EAAE,yBAACkC,EAAD,EAAsB;AACtCyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYK,KAAZ,GAAoBghC,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYK,KAAb,EAAoB5B,EAApB,CAA9B;AACA,SAFM,CADL,CAAH;AAKA,OAnIO;AAqIR;AACAjC,MAAAA,eAAe,EAAE,yBAACF,IAAD,EAAgC;AAChD,oBAAuBic,GAAG,EAA1B;AAAA,YAAQrS,UAAR,SAAQA,UAAR;;AACA,YAAIA,UAAU,IAAI5J,IAAI,CAACN,KAAL,KAAekK,UAAjC,EAA6C;AAC5C,iBAAOo7B,mBAAP;AACA;;AACDppB,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYI,QAAZ,GAAuBs9B,+CAAM,CAACwD,gDAAO,CAAC,CAAC5kC,IAAD,CAAD,EAASwF,KAAK,CAAC9B,KAAN,CAAYI,QAArB,EAA+B,IAA/B,CAAR,EAA8C,UAA9C,CAA7B;AACA,SAFM,CADL,CAAH;AAKA,eAAO9D,IAAI,CAACmC,EAAZ;AACA,OAjJO;AAmJR;AACAhC,MAAAA,kBAAkB,EAAE,4BAACgC,EAAD,EAAsB;AACzCyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYI,QAAZ,GAAuBihC,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYI,QAAb,EAAuB3B,EAAvB,CAAjC;AACA,SAFM,CADL,CAAH;AAKA,OA1JO;AA2JR;AACA;AACA/B,MAAAA,aAAa,EAAE,uBAACJ,IAAD,EAA8B;AAC5C,oBAAuBic,GAAG,EAA1B;AAAA,YAAQrS,UAAR,SAAQA,UAAR;;AACA,YAAIA,UAAU,IAAI5J,IAAI,CAACN,KAAL,KAAekK,UAAjC,EAA6C;AAC5C,iBAAOo7B,mBAAP;AACA;;AACDppB,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAY8O,MAAZ,GAAqB4uB,+CAAM,CAACwD,gDAAO,CAAC,CAAC5kC,IAAD,CAAD,EAASwF,KAAK,CAAC9B,KAAN,CAAY8O,MAArB,EAA6B,IAA7B,CAAR,EAA4C,UAA5C,CAA3B;AACA,SAFM,CADL,CAAH;AAKA,eAAOxS,IAAI,CAACmC,EAAZ;AACA,OAxKO;AAyKR;AACA9B,MAAAA,gBAAgB,EAAE,0BAAC8B,EAAD,EAAsB;AACvCyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAY8O,MAAZ,GAAqBuyB,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAY8O,MAAb,EAAqBrQ,EAArB,CAA/B;AACA,SAFM,CADL,CAAH;AAKA,OAhLO;AAiLR;AACA;AACA7B,MAAAA,cAAc,EAAE,wBAACN,IAAD,EAA+B;AAC9C4b,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYwhC,UAAZ,GAAyB9D,+CAAM,CAC9BwD,gDAAO,CAAC,CAAC5kC,IAAD,CAAD,EAASwF,KAAK,CAAC9B,KAAN,CAAYwhC,UAArB,EAAiC,IAAjC,CADuB,EAE9B,UAF8B,CAA/B;AAIA,SALM,CADL,CAAH;AAQA,eAAOllC,IAAI,CAACmC,EAAZ;AACA,OA7LO;AA8LR;AACA5B,MAAAA,iBAAiB,EAAE,2BAAC4B,EAAD,EAAsB;AACxCyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYwhC,UAAZ,GAAyBH,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYwhC,UAAb,EAAyB/iC,EAAzB,CAAnC;AACA,SAFM,CADL,CAAH;AAKA,OArMO;AAsMR;AACA;AACA3B,MAAAA,uBAAuB,EAAE,iCAACR,IAAD,EAAwC;AAChE4b,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYQ,qBAAZ,GAAoC0gC,gDAAO,CAC1C,CAAC5kC,IAAD,CAD0C,EAE1CwF,KAAK,CAAC9B,KAAN,CAAYQ,qBAF8B,EAG1C,IAH0C,CAA3C;AAKA,SANM,CADL,CAAH;AASA,eAAOlE,IAAI,CAACmC,EAAZ;AACA,OAnNO;AAoNR;AACA1B,MAAAA,0BAA0B,EAAE,oCAAC0B,EAAD,EAAsB;AACjDyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYQ,qBAAZ,GAAoC6gC,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYQ,qBAAb,EAAoC/B,EAApC,CAA9C;AACA,SAFM,CADL,CAAH;AAKA,OA3NO;AA4NR;AACA;AACAzB,MAAAA,yBAAyB,EAAE,mCAACV,IAAD,EAA0C;AACpE4b,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYm/B,uBAAZ,GAAsC+B,gDAAO,CAC5C,CAAC5kC,IAAD,CAD4C,EAE5CwF,KAAK,CAAC9B,KAAN,CAAYm/B,uBAFgC,EAG5C,IAH4C,CAA7C;AAKA,SANM,CADL,CAAH;AASA,eAAO7iC,IAAI,CAACmC,EAAZ;AACA,OAzOO;AA0OR;AACAxB,MAAAA,4BAA4B,EAAE,sCAACwB,EAAD,EAAsB;AACnDyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5BA,UAAAA,KAAK,CAAC9B,KAAN,CAAYm/B,uBAAZ,GAAsCkC,UAAU,CAACv/B,KAAK,CAAC9B,KAAN,CAAYm/B,uBAAb,EAAsC1gC,EAAtC,CAAhD;AACA,SAFM,CADL,CAAH;AAKA,OAjPO;AAkPR7C,MAAAA,kBAAkB,EAAE,4BAACmD,KAAD,EAA4BN,EAA5B,EAAiD;AACpEyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5B,cAAM4/B,GAAG,GAAGxyB,kDAAS,CAACpN,KAAK,CAAC9B,KAAN,CAAYC,UAAb,EAAyB,UAAC0hC,GAAD;AAAA,mBAASA,GAAG,CAACljC,EAAJ,KAAWA,EAApB;AAAA,WAAzB,CAArB;;AACA,cAAIijC,GAAG,IAAI,CAAX,EAAc;AACb5/B,YAAAA,KAAK,CAAC9B,KAAN,CAAYC,UAAZ,CAAuByhC,GAAvB,EAA4B3iC,KAA5B,mCACI+C,KAAK,CAAC9B,KAAN,CAAYC,UAAZ,CAAuByhC,GAAvB,EAA4B3iC,KADhC,GAEIA,KAFJ;AAIA;AACD,SARM,CADL,CAAH;AAWA,OA9PO;AA+PRlD,MAAAA,kBAAkB,EAAE,4BAACkD,KAAD,EAA4BN,EAA5B,EAAiD;AACpEyZ,QAAAA,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAqB;AAC5B,cAAM4/B,GAAG,GAAGxyB,kDAAS,CAACpN,KAAK,CAAC9B,KAAN,CAAYwhC,UAAb,EAAyB,UAACG,GAAD;AAAA,mBAASA,GAAG,CAACljC,EAAJ,KAAWA,EAApB;AAAA,WAAzB,CAArB;;AACA,cAAIijC,GAAG,IAAI,CAAX,EAAc;AACb5/B,YAAAA,KAAK,CAAC9B,KAAN,CAAYwhC,UAAZ,CAAuBE,GAAvB,EAA4B3iC,KAA5B,mCACI+C,KAAK,CAAC9B,KAAN,CAAYwhC,UAAZ,CAAuBE,GAAvB,EAA4B3iC,KADhC,GAEIA,KAFJ;AAIA;AACD,SARM,CADL,CAAH;AAWA;AA3QO;AA7BiD,GAAf;AAAA,CAAX,CAA1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC/BP;AACA;AACA;AACA;AACA;AAEA;AACA;AAaO,IAAMqiC,YAAY,GAAG,SAAfA,YAAe,CAAC1iC,GAAD;AAAA;;AAAA,SAAmD;AAC9E6iC,IAAAA,MAAM,iBAAE7iC,GAAG,CAAC6iC,MAAN,qDAAgB,EADwD;AAE9EtQ,IAAAA,WAAW,sBAAEvyB,GAAG,CAACuyB,WAAN,+DAAqB,mBAF8C;AAG9E;AACA5uB,IAAAA,aAAa,wBAAE3D,GAAG,CAAC2D,aAAN,mEAAuB,EAJ0C;AAK9EhJ,IAAAA,IAAI,eAAEqF,GAAG,CAACrF,IAAN,iDAAc,QAL4D;AAM9EmnC,IAAAA,QAAQ,mBAAE9hC,GAAG,CAAC8hC,QAAN,yDAAkB,EANoD;AAO9Ep+B,IAAAA,OAAO,kBAAE1D,GAAG,CAAC0D,OAAN,uDAAiB,EAPsD;AAQ9EoQ,IAAAA,IAAI,eAAE9T,GAAG,CAAC8T,IAAN,iDAAc,UAR4D;AAS9EpP,IAAAA,OAAO,EAAE1E,GAAG,CAAC0E,OATiE;AAU9EhE,IAAAA,IAAI,eAAEV,GAAG,CAACU,IAAN,iDAAc,MAV4D;AAW9E8c,IAAAA,OAAO,kBAAExd,GAAG,CAACwd,OAAN,uDAAiB,QAXsD;AAY9EF,IAAAA,SAAS,EAAEtd,GAAG,CAACsd;AAZ+D,GAAnD;AAAA,CAArB;;AAeP,IAAM4lB,YAAgB,GAAG,SAAnBA,YAAmB;AAAA,sBAAM,0FAAN;AAAA,CAAzB;;AAEO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAAC9iC,KAAD;AAAA;;AAAA,SAA2C;AAC5EC,IAAAA,IAAI,iBAAED,KAAK,CAACC,IAAR,qDAAgB,KADwD;AAE5Ei5B,IAAAA,KAAK,kBAAEl5B,KAAK,CAACk5B,KAAR,uDAAiB,CAFsD;AAG5EH,IAAAA,SAAS,sBAAE/4B,KAAK,CAAC+4B,SAAR,+DAAqB,KAH8C;AAI5E/gB,IAAAA,KAAK,kBAAEhY,KAAK,CAACgY,KAAR,uDAAiB;AAJsD,GAA3C;AAAA,CAA3B;AAOA,IAAM/b,cAAc,GAAG,SAAjBA,cAAiB,CAC7BsB,IAD6B,EAE7BoC,GAF6B,EAGL;AAAA;;AACxB,MAAM1C,KAAK,GAAGmS,4CAAI,gBAAC7R,IAAI,CAACN,KAAN,qDAAe0C,GAAG,CAACrF,IAAnB,EAAyB,GAAzB,CAAlB;AACA,SAAO;AACNqF,IAAAA,GAAG,EAAEA,GAAG,CAACrF,IADH;AAEN2C,IAAAA,KAAK,EAALA,KAFM;AAGNyC,IAAAA,EAAE,cAAEnC,IAAI,CAACmC,EAAP,+CAAazC,KAHT;AAIN+C,IAAAA,KAAK,EAAE8iC,kBAAkB,gBAACvlC,IAAD,aAACA,IAAD,uBAACA,IAAI,CAAEyC,KAAP,qDAAgB,EAAhB,CAJnB;AAKNF,IAAAA,QAAQ,oBAAEvC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEuC,QAAR,2DAAoBH,GAAG,CAAC8hC,QAL1B;AAMNrkC,IAAAA,OAAO,mBAAEG,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEH,OAAR,yDAAmB,IANpB;AAON2C,IAAAA,KAAK,iBAAExC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEwC,KAAR,qDAAiB,EAPhB;AAQNmB,IAAAA,UAAU,8BAAE3D,IAAI,CAAC2D,UAAP,+DAAqBvB,GAAG,CAACU,IAAzB,uCAAiC,aARrC;AASNc,IAAAA,YAAY,EAAE5D,IAAI,CAAC4D,YATb;AAUNC,IAAAA,OAAO,mBAAE7D,IAAI,CAAC6D,OAAP,yDAAkByhC,YAVnB;AAWN17B,IAAAA,UAAU,EAAE;AACXm4B,MAAAA,cAAc,EAAE/hC,IAAF,aAAEA,IAAF,2CAAEA,IAAI,CAAE4J,UAAR,qDAAE,iBAAkBm4B,cADvB;AAEXyB,MAAAA,eAAe,EAAExjC,IAAF,aAAEA,IAAF,4CAAEA,IAAI,CAAE4J,UAAR,sDAAE,kBAAkB45B,eAFxB;AAGXH,MAAAA,oBAAoB,EAAErjC,IAAF,aAAEA,IAAF,4CAAEA,IAAI,CAAE4J,UAAR,sDAAE,kBAAkBy5B;AAH7B;AAXN,GAAP;AAiBA,CAtBM;AAwBA,IAAM1kC,qBAAqB,GAAG,SAAxBA,qBAAwB,CACpCqB,IADoC,EAEpCoC,GAFoC,EAGlB;AAAA;;AAClB,MAAM1C,KAAK,GAAGmS,4CAAI,iBAAC7R,IAAI,CAACN,KAAN,uDAAe0C,GAAG,CAACrF,IAAnB,EAAyB,GAAzB,CAAlB;AACA,SAAO;AACNqF,IAAAA,GAAG,EAAEA,GAAG,CAACrF,IADH;AAEN2C,IAAAA,KAAK,EAALA,KAFM;AAGNyC,IAAAA,EAAE,eAAEnC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEmC,EAAR,iDAAczC,KAHV;AAIN4C,IAAAA,SAAS,qBAAEtC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEsC,SAAR,6DAAqBgjC,YAJxB;AAKN9iC,IAAAA,KAAK,kBAAExC,IAAI,CAACwC,KAAP,uDAAgBJ,GAAG,CAACwd,OALnB;AAMN9c,IAAAA,IAAI,gBAAE9C,IAAI,CAAC8C,IAAP,mDAAeV,GAAG,CAACU,IANjB;AAONP,IAAAA,QAAQ,8BAAEvC,IAAI,CAACuC,QAAP,6DAAmBH,GAAG,CAAC8hC,QAAvB,yCAAmC,EAPrC;AAQNnhC,IAAAA,WAAW,uBAAE/C,IAAI,CAAC+C,WAAP,iEAAsB;AAR3B,GAAP;AAUA,CAfM;AAgBA,IAAMnE,mBAAmB,GAAG,SAAtBA,mBAAsB,CAACoB,IAAD,EAA4BoC,GAA5B,EAAgE;AAAA;;AAClG,MAAM1C,KAAK,GAAGmS,4CAAI,iBAAC7R,IAAI,CAACN,KAAN,uDAAe0C,GAAG,CAACrF,IAAnB,EAAyB,GAAzB,CAAlB;AACA,SAAO;AACNqF,IAAAA,GAAG,EAAEA,GAAG,CAACrF,IADH;AAEN2C,IAAAA,KAAK,EAALA,KAFM;AAGNyC,IAAAA,EAAE,eAAEnC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEmC,EAAR,iDAAczC,KAHV;AAIN4C,IAAAA,SAAS,sBAAEtC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEsC,SAAR,+DAAqBgjC,YAJxB;AAKN9iC,IAAAA,KAAK,kBAAExC,IAAI,CAACwC,KAAP,uDAAgBJ,GAAG,CAACwd,OALnB;AAMN9c,IAAAA,IAAI,iBAAE9C,IAAI,CAAC8C,IAAP,qDAAeV,GAAG,CAACU,IANjB;AAONP,IAAAA,QAAQ,8BAAEvC,IAAI,CAACuC,QAAP,6DAAmBH,GAAG,CAAC8hC,QAAvB,yCAAmC;AAPrC,GAAP;AASA,CAXM;AAYA,IAAMrlC,oBAAoB,GAAG,SAAvBA,oBAAuB,CACnCmB,IADmC,EAEnCoC,GAFmC;AAAA;;AAAA,SAGjB;AAClBA,IAAAA,GAAG,EAAEA,GAAG,CAACrF,IADS;AAElBoF,IAAAA,EAAE,eAAEnC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEmC,EAAR,iDAAcC,GAAG,CAACrF,IAFF;AAGlByoC,IAAAA,eAAe,EAAExlC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEwlC,eAHL;AAIlBC,IAAAA,eAAe,EAAEzlC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEylC,eAJL;AAKlBnjC,IAAAA,SAAS,sBAAEtC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEsC,SAAR,+DAAqBgjC,YALZ;AAMlBI,IAAAA,MAAM,kBAAE1lC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAE0lC,MAAR,uDAAkB,MANN;AAOlBjjC,IAAAA,KAAK,EAAE8iC,kBAAkB,iBAACvlC,IAAD,aAACA,IAAD,uBAACA,IAAI,CAAEyC,KAAP,uDAAgB,EAAhB,CAPP;AAQlBF,IAAAA,QAAQ,qBAAEvC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEuC,QAAR,6DAAoBH,GAAG,CAAC8hC,QARd;AASlB1hC,IAAAA,KAAK,kBAAExC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEwC,KAAR,uDAAiBJ,GAAG,CAACwd;AATR,GAHiB;AAAA,CAA7B;AAcA,IAAM9gB,6BAA6B,GAAG,SAAhCA,6BAAgC,CAC5CkB,IAD4C,EAE5CoC,GAF4C;AAAA;;AAAA,SAGjB;AAC3BA,IAAAA,GAAG,EAAEA,GAAG,CAACrF,IADkB;AAE3Bwf,IAAAA,OAAO,EAAEvc,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEuc,OAFY;AAG3B/Z,IAAAA,KAAK,kBAAExC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEwC,KAAR,uDAAiBJ,GAAG,CAACwd,OAHC;AAI3Brd,IAAAA,QAAQ,qBAAEvC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEuC,QAAR,6DAAoBH,GAAG,CAAC8hC,QAJL;AAK3BsB,IAAAA,eAAe,EAAExlC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEwlC,eALI;AAM3BC,IAAAA,eAAe,EAAEzlC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEylC,eANI;AAO3BtjC,IAAAA,EAAE,eAAEnC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEmC,EAAR,iDAAcC,GAAG,CAACrF,IAPO;AAQ3BuF,IAAAA,SAAS,sBAAEtC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEsC,SAAR,+DAAqBgjC;AARH,GAHiB;AAAA,CAAtC;AAaA,IAAMvmC,+BAA+B,GAAG,SAAlCA,+BAAkC,CAC9CiB,IAD8C,EAE9CoC,GAF8C;AAAA;;AAAA,SAGjB;AAC7BA,IAAAA,GAAG,EAAEA,GAAG,CAACrF,IADoB;AAE7BwF,IAAAA,QAAQ,qBAAEvC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEuC,QAAR,6DAAoBH,GAAG,CAAC8hC,QAFH;AAG7BsB,IAAAA,eAAe,EAAExlC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEwlC,eAHM;AAI7BC,IAAAA,eAAe,EAAEzlC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEylC,eAJM;AAK7BtjC,IAAAA,EAAE,eAAEnC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEmC,EAAR,iDAAcC,GAAG,CAACrF,IALS;AAM7BuF,IAAAA,SAAS,sBAAEtC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEsC,SAAR,+DAAqBgjC;AAND,GAHiB;AAAA,CAAxC;AAYA,IAAMtmC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACgB,IAAD,EAA2BoC,GAA3B,EAA8D;AAAA;;AAC/F,MAAM1C,KAAK,GAAGmS,4CAAI,iBAAC7R,IAAI,CAACN,KAAN,uDAAe0C,GAAG,CAACrF,IAAnB,EAAyB,GAAzB,CAAlB;AACA,SAAO;AACNqF,IAAAA,GAAG,EAAEA,GAAG,CAACrF,IADH;AAEN2C,IAAAA,KAAK,EAALA,KAFM;AAGNyC,IAAAA,EAAE,eAAEnC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEmC,EAAR,iDAAczC,KAHV;AAIN4C,IAAAA,SAAS,sBAAEtC,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEsC,SAAR,+DAAqBgjC;AAJxB,GAAP;AAMA,CARM;;;;;;;;;;;;;;;;;;;;;;;;;;ACvIP;AACA;AACA;AACA;AACA;AACA;AAEA;AAEO,IAAM/oC,YAAY,GAAG,SAAfA,YAAe,CAAK4F,EAAL;AAAA,SAA8B65B,qDAAa,CAAC,UAAC79B,CAAD;AAAA,WAAOA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CAAP;AAAA,GAAD,CAA3C;AAAA,CAArB;AACA,IAAM/F,YAAY,GAAG,SAAfA,YAAe,CAAK+F,EAAL;AAAA,SAA8B65B,0DAAA,GAAyBY,MAAzB,CAAgCz6B,EAAhC,CAA9B;AAAA,CAArB;AACA,IAAM7F,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAK6F,EAAL;AAAA,SAClC65B,qDAAa,CAAC,UAAC79B,CAAD;AAAA,WAAOA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,EAAakV,OAApB;AAAA,GAAD,CADqB;AAAA,CAA5B;AAEA,IAAMhb,mBAAmB,GAAG,SAAtBA,mBAAsB,CAAK8F,EAAL;AAAA,SAClC65B,0DAAA,GAAyBY,MAAzB,CAAgCz6B,EAAhC,EAAoCkV,OADF;AAAA,CAA5B,EAGP;AACA;AACA;;AACO,IAAMsuB,YAAY,gBAAGh7B,oDAAa,EAAlC,EACP;AACA;AACA;;AACO,IAAMi7B,iBAAiB,gBAAGj7B,oDAAa,EAAvC;AAEA,IAAMizB,aAAiC,GAAG,SAApCA,aAAoC,OAAsB;AAAA,MAAnB1mC,QAAmB,QAAnBA,QAAmB;AAAA,MAATiL,EAAS,QAATA,EAAS;AACtE,MAAM4B,KAAK,GAAGxH,YAAY,CAAC4F,EAAD,CAA1B;AACA,MAAM0jC,SAAS,GAAGloC,8CAAO,CACxB;AAAA,WAAO;AACNmoC,MAAAA,eAAe,EAAE;AAAA,eAAMzpC,mBAAmB,CAAC8F,EAAD,CAAzB;AAAA,OADX;AAEN4jC,MAAAA,QAAQ,EAAE;AAAA,eAAM3pC,YAAY,CAAC+F,EAAD,CAAlB;AAAA,OAFJ;AAGNlG,MAAAA,UAAU,EAAE;AAAA,eAAMA,kDAAU,CAACkG,EAAD,CAAhB;AAAA,OAHN;AAINjG,MAAAA,WAAW,EAAE,qBAAC4gC,CAAD;AAAA,eAAO5gC,mDAAW,CAACiG,EAAD,EAAK26B,CAAL,CAAlB;AAAA,OAJP;AAKNngC,MAAAA,eAAe,EAAE;AAAA,eAAMA,uDAAe,CAACwF,EAAD,CAArB;AAAA;AALX,KAAP;AAAA,GADwB,EAQxB,CAACA,EAAD,CARwB,CAAzB;AAUA,sBACC,2DAAC,iBAAD,CAAmB,QAAnB;AAA4B,SAAK,EAAE0jC;AAAnC,kBACC,2DAAC,YAAD,CAAc,QAAd;AAAuB,SAAK,EAAE9hC;AAA9B,KAAsC7M,QAAtC,CADD,CADD;AAKA,CAjBM;AAmBA,IAAM0F,aAAa,GAAG,SAAhBA,aAAgB;AAAA,SAAyByL,iDAAU,CAACu9B,iBAAD,CAAnC;AAAA,CAAtB;AACA,IAAMppC,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAa6L,iDAAU,CAACs9B,YAAD,CAAvB;AAAA,CAAjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7CP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAEO,IAAM3J,aAAa,GAAGva,oDAAM,CAAa;AAAA,SAAO;AACtDmb,IAAAA,MAAM,EAAE,EAD8C;AAEtDhC,IAAAA,QAAQ,EAAE,KAF4C;AAGtDyB,IAAAA,SAAS,EAAE;AAH2C,GAAP;AAAA,CAAb,CAA5B;AAMA,IAAMrgC,QAAQ,GACpB,SADYA,QACZ,CAACoG,GAAD;AAAA,SACA,UACC2B,KADD,EAEC62B,QAFD,EAGY;AAAA;;AACX,QAAMz4B,EAAE,gBAAG4B,KAAK,CAAC5B,EAAT,iDAAe8jC,iDAAQ,CAAC,QAAD,CAA/B;AACAjK,IAAAA,aAAa,CAACx4B,QAAd,CACCnC,kDAAO,CAAC,UAAClD,CAAD,EAAmB;AAAA;;AAC1B;AACAA,MAAAA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,oCACI4B,KADJ;AAEC3B,QAAAA,GAAG,EAAHA,GAFD;AAGCD,QAAAA,EAAE,EAAFA,EAHD;AAICW,QAAAA,IAAI,yBAAEiB,KAAK,CAACjB,IAAR,gEAAgBpL,6CAAM,CAAC0K,GAAD,CAAN,EAAhB,4CAAgB,QAAeU,IAA/B,uCAAuC,aAJ5C;AAKC2O,QAAAA,GAAG,EAAEu0B,kDAAS,CAACjiC,KAAK,CAAC0N,GAAP,EAAY,GAAZ;AALf,SAF0B,CAS1B;;AACAtT,MAAAA,CAAC,CAACsW,OAAF,GAAYtS,EAAZ,CAV0B,CAW1B;;AACAhE,MAAAA,CAAC,CAACk+B,SAAF,GAAc,KAAd,CAZ0B,CAa1B;;AACAl+B,MAAAA,CAAC,CAACy8B,QAAF,GAAaA,QAAb,aAAaA,QAAb,cAAaA,QAAb,GAAyBz8B,CAAC,CAACy8B,QAA3B;AACA,KAfM,CADR;AAkBA,WAAOoB,aAAa,CAAC5+B,QAAd,GAAyBw/B,MAAzB,CAAgCz6B,EAAhC,CAAP;AACA,GAzBD;AAAA,CADM;AA2BA,IAAMlG,UAAU,GAAG,SAAbA,UAAa,CAACkG,EAAD,EAAsB;AAC/C65B,EAAAA,aAAa,CAACx4B,QAAd,CACCnC,kDAAO,CAAC,UAAClD,CAAD,EAAmB;AAAA;;AAC1B,oBAAAA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,uFAAcwrB,OAAd,iGAAwBxvB,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CAAxB,EAD0B,CAE1B;;AACA,WAAOhE,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CAAP;AACA,GAJM,CADR;AAOA,CARM;AASA,IAAMy5B,cAAc,GAAG,SAAjBA,cAAiB,GAAY;AACzCI,EAAAA,aAAa,CAACx4B,QAAd,CACCnC,kDAAO,CAAC,UAAClD,CAAD,EAAmB;AAC1B0U,IAAAA,gDAAO,CAAC1U,CAAC,CAACy+B,MAAH,EAAW,UAACE,CAAD,EAAO;AAAA;;AACxBA,MAAAA,CAAC,SAAD,IAAAA,CAAC,WAAD,0BAAAA,CAAC,CAAEnP,OAAH,+DAAAmP,CAAC,EAAYA,CAAZ,CAAD,CADwB,CAExB;;AACA,aAAO3+B,CAAC,CAACy+B,MAAF,CAASE,CAAC,CAAC36B,EAAX,CAAP;AACA,KAJM,CAAP;AAKA,GANM,CADR;AASA,CAVM;AAWA,IAAM25B,WAAW,GAAG,SAAdA,WAAc,GAAY;AACtCE,EAAAA,aAAa,CAACx4B,QAAd,CACCnC,kDAAO,CAAC,UAAClD,CAAD,EAAmB;AAC1B,QAAMgE,EAAE,GAAGhE,CAAC,CAACsW,OAAb;;AACA,QAAItS,EAAJ,EAAQ;AAAA;;AACP,uBAAAhE,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,0FAAc25B,WAAd,oGAA4B39B,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CAA5B,EADO,CAEP;;AACA,aAAOhE,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CAAP;AACA;AACD,GAPM,CADR;AAUA,CAXM;AAYA,IAAM1F,cAAc,GAAG,SAAjBA,cAAiB,GAAY;AACzCu/B,EAAAA,aAAa,CAACx4B,QAAd,CAAuB;AACtB64B,IAAAA,SAAS,EAAE;AADW,GAAvB;AAGA,CAJM;AAKA,IAAM3/B,YAAY,GAAG,SAAfA,YAAe,GAAY;AACvCs/B,EAAAA,aAAa,CAACx4B,QAAd,CAAuB;AACtB64B,IAAAA,SAAS,EAAE;AADW,GAAvB;AAGA,CAJM;AAKA,IAAMR,YAAY,GAAG,SAAfA,YAAe,GAAY;AACvCG,EAAAA,aAAa,CAACx4B,QAAd,CAAuB;AACtBo3B,IAAAA,QAAQ,EAAE;AADY,GAAvB;AAGA,CAJM;AAKA,IAAMmB,YAAY,GAAG,SAAfA,YAAe,GAAY;AACvCC,EAAAA,aAAa,CAACx4B,QAAd,CAAuB;AACtBo3B,IAAAA,QAAQ,EAAE;AADY,GAAvB;AAGA,CAJM;AAKA,IAAMj+B,eAAe,GAAG,SAAlBA,eAAkB,CAACwF,EAAD,EAAsB;AACpD65B,EAAAA,aAAa,CAACx4B,QAAd,CAAuB;AACtBiR,IAAAA,OAAO,EAAEtS;AADa,GAAvB;AAGA,CAJM;AAKA,IAAMjG,WAAW,GAAG,SAAdA,WAAc,CAAUiG,EAAV,EAAsB4B,KAAtB,EAAyD;AACnFi4B,EAAAA,aAAa,CAACx4B,QAAd,CACCnC,kDAAO,CAAC,UAAClD,CAAD,EAAmB;AAC1B,QAAIA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CAAJ,EACC;AACAhE,MAAAA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,oCACIhE,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CADJ,GAEI4B,KAFJ;AAID,GAPM,CADR;AAUA,CAXM;AAYA,IAAM5H,kBAAkB,GAAG,SAArBA,kBAAqB,CAAUgG,EAAV,EAAsBkV,OAAtB,EAA2C;AAC5E2kB,EAAAA,aAAa,CAACx4B,QAAd,CACCnC,kDAAO,CAAC,UAAClD,CAAD,EAAmB;AAC1B,QAAIA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,CAAJ,EACC;AACAhE,MAAAA,CAAC,CAACy+B,MAAF,CAASz6B,EAAT,EAAakV,OAAb,GAAuBA,OAAvB;AACD,GAJM,CADR;AAOA,CARM;;;;;;;;;;;;;;;;;;;;;AClHP;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AAGO,IAAMvf,gBAAgB,GAAG2pB,mDAAM,CAAqB,UAAC7F,GAAD;AAAA,SAAU;AACpEve,IAAAA,yBAAyB,EAAE,EADyC;AAEpEC,IAAAA,SAAS,EAAE,EAFyD;AAGpE61B,IAAAA,GAAG,EAAE,mBAAoD;AAAA,UAAjD91B,yBAAiD,QAAjDA,yBAAiD;AAAA,UAAtBC,SAAsB,QAAtBA,SAAsB;AACxDse,MAAAA,GAAG,CAAC,UAACzd,CAAD;AAAA,eAAQ;AACXd,UAAAA,yBAAyB,EAAE5F,8CAAM,CAChC4F,yBADgC,aAChCA,yBADgC,cAChCA,yBADgC,GACH,EADG,EAEhC,UAACE,GAAD,EAAMC,CAAN,EAAS0V,GAAT,EAAiB;AAChB;AACA3V,YAAAA,GAAG,CAAC2V,GAAD,CAAH,GAAW1V,CAAX;AACA,mBAAOD,GAAP;AACA,WAN+B,EAOhCY,CAAC,CAACd,yBAP8B,CADtB;AAUXC,UAAAA,SAAS,EAAE7F,8CAAM,CAChB6F,SADgB,aAChBA,SADgB,cAChBA,SADgB,GACH,EADG,EAEhB,UAACC,GAAD,EAAMC,CAAN,EAAS0V,GAAT,EAAiB;AAChB;AACA3V,YAAAA,GAAG,CAAC2V,GAAD,CAAH,GAAW1V,CAAX;AACA,mBAAOD,GAAP;AACA,WANe,EAOhBY,CAAC,CAACb,SAPc;AAVN,SAAR;AAAA,OAAD,CAAH;AAoBA;AAxBmE,GAAV;AAAA,CAArB,CAA/B;AA2BA,IAAM2L,SAAS,GAAG,SAAZA,SAAY,CAACi9B,OAAD,EAA6D;AACrF,MAAMC,YAAY,GAAGruC,gBAAgB,CAAC;AAAA,QAAGq7B,GAAH,SAAGA,GAAH;AAAA,WAAaA,GAAb;AAAA,GAAD,CAArC;AACA7qB,EAAAA,gDAAS,CAAC,YAAM;AACf69B,IAAAA,YAAY,CAACD,OAAD,CAAZ;AACA,GAFQ,EAEN,CAACA,OAAD,EAAUC,YAAV,CAFM,CAAT;AAGA,CALM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvCP;AACA;AACA;AACA;AACA;AAEA;AASA;AACA;CAGA;;AACO,IAAM5rC,SAAS,GAAG,SAAZA,SAAY,CAAC4H,EAAD;AAAA,SAAoCikC,uDAAc,CAAC,UAACjoC,CAAD;AAAA;;AAAA,yBAAOA,CAAC,CAACuoC,OAAT,+CAAO,WAAYvkC,EAAZ,CAAP;AAAA,GAAD,CAAlD;AAAA,CAAlB;AACA,IAAM9H,SAAS,GAAG,SAAZA,SAAY,CAAC8H,EAAD;AAAA;;AAAA,kCACxBikC,4DAAA,EADwB,oFACxB,sBAA2BM,OADH,2DACxB,uBAAqCvkC,EAArC,CADwB;AAAA,CAAlB;AAEA,IAAM3H,UAAU,GAAG,SAAbA,UAAa;AAAA,SAAe4rC,uDAAc,CAAC,UAACjoC,CAAD;AAAA,WAAOA,CAAC,CAACuoC,OAAT;AAAA,GAAD,CAA7B;AAAA,CAAnB;AACA,IAAMpsC,UAAU,GAAG,SAAbA,UAAa;AAAA,SAAe8rC,4DAAA,GAA0BM,OAAzC;AAAA,CAAnB,EAEP;;AACO,IAAMjsC,OAAO,GAAG,SAAVA,OAAU,CAAC0H,EAAD;AAAA,SAAoCikC,uDAAc,CAAC,UAACjoC,CAAD;AAAA;;AAAA,uBAAOA,CAAC,CAACwoC,KAAT,6CAAO,SAAUxkC,EAAV,CAAP;AAAA,GAAD,CAAlD;AAAA,CAAhB;AACA,IAAMzH,OAAO,GAAG,SAAVA,OAAU,CAACyH,EAAD;AAAA;;AAAA,mCAAoCikC,4DAAA,GAA0BO,KAA9D,2DAAoC,uBAAkCxkC,EAAlC,CAApC;AAAA,CAAhB;AACA,IAAMxH,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAeyrC,uDAAc,CAAC,UAACjoC,CAAD;AAAA,WAAOA,CAAC,CAACwoC,KAAT;AAAA,GAAD,CAA7B;AAAA,CAAjB;AACA,IAAM/rC,QAAQ,GAAG,SAAXA,QAAW;AAAA,SAAewrC,4DAAA,GAA0BO,KAAzC;AAAA,CAAjB,EAEP;;AACO,IAAMxrC,aAAa,GAAG,SAAhBA,aAAgB,CAACyrC,MAAD;AAAA,SAC5BR,uDAAc,CAAC,UAACjoC,CAAD;AAAA,WAAQA,CAAC,CAACwoC,KAAF,GAAUxoC,CAAC,CAACwoC,KAAF,CAAQC,MAAR,CAAV,GAA4B,EAApC;AAAA,GAAD,CADc;AAAA,CAAtB;AAEA,IAAMxrC,aAAa,GAAG,SAAhBA,aAAgB,CAACwrC,MAAD,EAAmE;AAC/F,MAAMF,OAAO,GAAGN,4DAAA,EAAhB;AACA,SAAOM,OAAO,CAACC,KAAR,GAAgBD,OAAO,CAACC,KAAR,CAAcC,MAAd,CAAhB,GAAwC,EAA/C;AACA,CAHM,EAKP;;AAEO,IAAM/rC,eAAe,GAAG,SAAlBA,eAAkB,CAACsH,EAAD;AAAA,SAC9BikC,uDAAc,CAAC,UAACjoC,CAAD;AAAA;;AAAA,0BAAOA,CAAC,CAAC0oC,QAAT,gDAAO,YAAa1kC,EAAb,CAAP;AAAA,GAAD,CADgB;AAAA,CAAxB;AAEA,IAAMpH,eAAe,GAAG,SAAlBA,eAAkB,CAACoH,EAAD;AAAA,SAC9BikC,4DAAA,GAA0BS,QAA1B,CAAmC1kC,EAAnC,CAD8B;AAAA,CAAxB;AAEA,IAAMrH,gBAAgB,GAAG,SAAnBA,gBAAmB;AAAA,SAAgBsrC,uDAAc,CAAC,UAACjoC,CAAD;AAAA,WAAOA,CAAC,CAAC0oC,QAAT;AAAA,GAAD,CAA9B;AAAA,CAAzB;AACA,IAAM7rC,gBAAgB,GAAG,SAAnBA,gBAAmB;AAAA,SAAgBorC,4DAAA,GAA0BS,QAA1C;AAAA,CAAzB,EAEP;;AAEO,IAAM3rC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACipB,IAAD,EAAqC;AACpE,MAAMwiB,KAAK,GAAGhsC,QAAQ,EAAtB;AACA,MAAMmsC,YAAY,GAAGnpC,+CAAO,CAC3B;AAAA,WAAOwmB,IAAI,KAAKvT,4DAAT,GAA+B61B,gDAA/B,GAA6CxwB,SAApD;AAAA,GAD2B,EAE3B,CAACkO,IAAD,CAF2B,CAA5B;AAIA,SAAOxmB,+CAAO,CACb;AAAA,WACCgpC,KAAK,GAAGN,oDAAW,CAAS57B,MAAM,CAACC,MAAP,CAAci8B,KAAd,CAAT,EAA+BL,yDAAgB,CAACniB,IAAD,CAA/C,EAAuD2iB,YAAvD,CAAd,GAAqF,EAD3F;AAAA,GADa,EAGb,CAACH,KAAD,EAAQG,YAAR,EAAsB3iB,IAAtB,CAHa,CAAd;AAKA,CAXM;AAaA,IAAMlpB,yBAAyB,GAAG,SAA5BA,yBAA4B,CACxCkpB,IADwC,EAExCwc,eAFwC,EAGxCoG,SAHwC,EAIZ;AAC5B,MAAMJ,KAAK,GAAGhsC,QAAQ,EAAtB;AACA,SAAOgD,+CAAO,CACb;AAAA,WACCgpC,KAAK,GACFH,iDAAQ,CAA0B/7B,MAAM,CAACC,MAAP,CAAci8B,KAAd,CAA1B,EAAgD;AACxDK,MAAAA,WAAW,EAAE,qBAACxpC,CAAD,EAAO;AAAA;;AACnB,YAAMiW,IAAI,GAAG;AACZtR,UAAAA,EAAE,EAAE3E,CAAC,CAAC2E,EADM;AAEZK,UAAAA,KAAK,EAAEhF,CAAC,CAACT,IAFG;AAGZ4jC,UAAAA,eAAe,EAAfA,eAHY;AAIZ7S,UAAAA,KAAK,EAAE,EAJK;AAKZmZ,UAAAA,MAAM,EAAEzpC,CALI;AAMZq9B,UAAAA,YAAY,EAAE0L,+CAAM,CAAC/oC,CAAD;AANR,SAAb;AAQA,YAAMwV,KAAK,iBAAG+zB,SAAH,aAAGA,SAAH,uBAAGA,SAAS,CAAGtzB,IAAH,CAAZ,mDAAwB,EAAnC;AACA,+CAAYA,IAAZ,GAAqBT,KAArB;AACA,OAZuD;AAaxDk0B,MAAAA,cAAc,EAAEZ,yDAAgB,CAACniB,IAAD,CAbwB;AAcxDgjB,MAAAA,YAAY,EAAE,OAd0C;AAexDL,MAAAA,YAAY,EAAEL,gDAf0C;AAgBxDW,MAAAA,IAAI,EAAE;AAhBkD,KAAhD,CADN,GAmBF,EApBJ;AAAA,GADa,EAsBb,CAACzG,eAAD,EAAkBoG,SAAlB,EAA6BJ,KAA7B,EAAoCxiB,IAApC,CAtBa,CAAd;AAwBA,CA9BM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChEP;AACA;AACA;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAEO,IAAMiiB,cAAc,GAAG3kB,mDAAM,CAAc;AAAA,SAAO;AACxDilB,IAAAA,OAAO,EAAE,EAD+C;AAExDC,IAAAA,KAAK,EAAE,EAFiD;AAGxDE,IAAAA,QAAQ,EAAE;AAH8C,GAAP;AAAA,CAAd,CAA7B;;AAMPQ,4DAAA,GAAyB,gBAAoB;AAAA,MAAjBrnC,IAAiB,QAAjBA,IAAiB;AAC5ComC,EAAAA,cAAc,CAAC5iC,QAAf,CAAwBxD,IAAxB;AACA,CAFD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AChBA;AACA;AACA;AACA;AACA;AACA;AAEA;;AAEA,IAAMunC,KAAK,GAAG,SAARA,KAAQ,CAAC/pC,CAAD,EAAgC2E,EAAhC;AAAA,SAAwD3E,CAAC,CAAC2E,EAAF,CAAKqV,KAAL,CAAW,GAAX,EAAgB1B,QAAhB,CAAyB3T,EAAzB,CAAxD;AAAA,CAAd;;AACA,IAAMqlC,aAAa,GAAG,SAAhBA,aAAgB,CAAChqC,CAAD,EAAuB;AAAA;;AAC5C,MAAMiqC,KAAK,GAAGjqC,CAAC,CAAC2E,EAAF,CAAKqV,KAAL,CAAW,GAAX,CAAd;AACA,oBAAOiwB,KAAK,CAAC,CAAD,CAAZ,6CAAmBA,KAAK,CAAC,CAAD,CAAxB;AACA,CAHD;;AAIO,IAAMhB,WAAW,GAAG,SAAdA,WAAc,CAACjpC,CAAD,EAAuB;AACjD,MAAM2E,EAAE,GAAGqlC,aAAa,CAAChqC,CAAD,CAAxB;;AACA,MAAI2E,EAAE,KAAK2L,sDAAX,EAA0B;AACzB,WAAO,GAAP;AACA;;AACD,SAAOgM,QAAQ,CAAC3X,EAAD,EAAK,EAAL,CAAR,GAAmB,EAAnB,gBAA8BA,EAA9B,IAAqC3E,CAAC,CAACT,IAAF,CAAO2qC,WAAP,EAA5C;AACA,CANM;AAQA,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACnqC,CAAD;AAAA,SAAwB+pC,KAAK,CAAC/pC,CAAD,EAAIsQ,sDAAJ,CAA7B;AAAA,CAAhB;AAEA,IAAMy4B,MAAM,GAAG,SAATA,MAAS,CAAC/oC,CAAD;AAAA,SACrBA,CAAC,CAAC2E,EAAF,KAAS2L,0DAAT,IAA+BtQ,CAAD,CAAkBoqC,KAAlB,KAA4Bl3B,kDADrC;AAAA,CAAf;AAGA,IAAM41B,gBAAgB,GAC5B,SADYA,gBACZ,CAAC9f,CAAD;AAAA,SACA,UAAC4gB,IAAD;AAAA,WACA,UAAC5pC,CAAD;AAAA,aACCA,CAAC,CAAC2mB,IAAF,KAAWqC,CAAX,IAAgB,CAAC4gB,IAAjB,IAA0B,OAAO5pC,CAAC,CAAC2mB,IAAT,KAAkB,WAAlB,IAAiC,CAACoiB,MAAM,CAAC/oC,CAAD,CADnE;AAAA,KADA;AAAA,GADA;AAAA,CADM;AAMA,IAAM6oC,WAAW,GAAG,SAAdA,WAAc,CAC1BnvC,QAD0B,EAE1BsG,CAF0B,EAG1BspC,YAH0B,EAI1BM,IAJ0B,EAKP;AACnB,MAAMS,cAAc,GAAGf,YAAY,GAAG1F,+CAAM,CAAClqC,QAAD,EAAW4vC,YAAX,CAAT,GAAoC5vC,QAAvE;AACA,SAAO2wC,cAAc,CACnBthC,MADK,CACE/I,CAAC,CAAC4pC,IAAD,CADH,EAELvpC,GAFK,CAED,UAACkY,CAAD;AAAA,2CAAaA,CAAb;AAAgB7e,MAAAA,QAAQ,EAAEmvC,WAAW,CAActwB,CAAC,CAAC7e,QAAhB,EAA0BsG,CAA1B,EAA6BspC,YAA7B,EAA2C,IAA3C;AAArC;AAAA,GAFC,CAAP;AAGA,CAVM;AAmBA,IAAMN,QAAQ,GAAG,SAAXA,QAAW,CACvBtvC,QADuB;AAAA,MAErB8vC,WAFqB,QAErBA,WAFqB;AAAA,MAERE,cAFQ,QAERA,cAFQ;AAAA,MAEQC,YAFR,QAEQA,YAFR;AAAA,MAEsBL,YAFtB,QAEsBA,YAFtB;AAAA,MAEoCM,IAFpC,QAEoCA,IAFpC;AAAA,SAIvBhG,+CAAM,CAAClqC,QAAD,EAAW4vC,YAAX,CAAN,CAA+BrvC,MAA/B,CAAsC,UAAC8F,GAAD,EAAM0pC,MAAN,EAAiB;AACtD,QAAIC,cAAc,CAACE,IAAD,CAAd,CAAqBH,MAArB,CAAJ,EAAkC;AACjC1pC,MAAAA,GAAG,CAAC0G,IAAJ,iCACI+iC,WAAW,CAACC,MAAD,CADf,6FAEEE,YAFF,EAEiBX,QAAQ,CAAiBS,MAAM,CAAC/vC,QAAxB,EAAkC;AACzD8vC,QAAAA,WAAW,EAAXA,WADyD;AAEzDE,QAAAA,cAAc,EAAdA,cAFyD;AAGzDC,QAAAA,YAAY,EAAZA,YAHyD;AAIzDL,QAAAA,YAAY,EAAZA,YAJyD;AAKzDM,QAAAA,IAAI,EAAE;AALmD,OAAlC,CAFzB;AAUA;;AACD,WAAO7pC,GAAP;AACA,GAdD,EAcG,EAdH,CAJuB;AAAA,CAAjB;;;;;;;;;;;;;;;;;;;;ACpDP;AACA;AACA;AACA;AACA;AAEA;AAEO,IAAMxG,OAAO,GAAG,SAAVA,OAAU,CAACqL,GAAD;AAAA,SAAiB;AAAA,WACvC;AACA8F,MAAAA,oDAAY,CAAC,UAAC/J,CAAD;AAAA;;AAAA,mCAAOA,CAAC,CAAC2pC,SAAF,CAAY1lC,GAAZ,CAAP,+DAA2BjE,CAAC,CAACiK,WAA7B;AAAA,OAAD;AAF2B;AAAA,GAAjB;AAAA,CAAhB;AAIA,IAAM2/B,SAAS,GAAG,SAAZA,SAAY;AAAA,SAAc7/B,oDAAY,CAAC,UAAC/J,CAAD;AAAA,WAAOA,CAAC,CAACo7B,MAAT;AAAA,GAAD,CAA1B;AAAA,CAAlB;AAEA,IAAMz9B,OAAO,GAAG,SAAVA,OAAU,CAACsG,GAAD;AAAA,SAAiB,YAAY;AAAA;;AACnD,gCAAmC8F,yDAAA,EAAnC;AAAA,QAAQ4/B,SAAR,yBAAQA,SAAR;AAAA,QAAmB1/B,WAAnB,yBAAmBA,WAAnB;;AACA,6BAAO0/B,SAAS,CAAC1lC,GAAD,CAAhB,2DAAyBgG,WAAzB;AACA,GAHsB;AAAA,CAAhB;AAKA,IAAMrM,YAAY,GAAG,SAAfA,YAAe,CAACqG,GAAD,EAA4B;AAAA;;AACvD,+BAAmC8F,yDAAA,EAAnC;AAAA,MAAQ4/B,SAAR,0BAAQA,SAAR;AAAA,MAAmB1/B,WAAnB,0BAAmBA,WAAnB;;AACA,gDAAO0/B,SAAS,CAAC1lC,GAAD,CAAhB,oDAAO,gBAAgBpF,CAAvB,+DAA4BoL,WAAW,CAACpL,CAAxC;AACA,CAHM;AAKA,IAAMgrC,SAAS,GAAG,SAAZA,SAAY;AAAA,SAAc9/B,yDAAA,GAAwBqxB,MAAtC;AAAA,CAAlB;;;;;;;;;;;;;;;;;;;;;;;;ACxBP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACLA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAGA,IAAMnxB,WAAW,GAAG6/B,8DAAA,EAApB;AAEO,IAAM//B,YAAY,GAAGuZ,mDAAM,CAAY;AAAA,SAAO;AACpDqmB,IAAAA,SAAS,EAAE,EADyC;AAEpD1/B,IAAAA,WAAW,EAAXA,WAFoD;AAGpDmxB,IAAAA,MAAM,EAAE;AAH4C,GAAP;AAAA,CAAZ,CAA3B;AAMA,IAAMnvB,SAAS,GAAG,SAAZA,SAAY,CAACmvB,MAAD,EAA0B;AAClD,8BAAsBrxB,YAAY,CAAC9K,QAAb,EAAtB;AAAA,MAAQ0qC,SAAR,yBAAQA,SAAR;;AACAj1B,EAAAA,+CAAO,CAACi1B,SAAD,EAAY,UAACO,QAAD;AAAA,WAAcA,QAAQ,CAACC,cAAT,CAAwB/O,MAAxB,CAAd;AAAA,GAAZ,CAAP;AACArxB,EAAAA,YAAY,CAAC1E,QAAb,CAAsB;AAAA,WAAO;AAC5B+1B,MAAAA,MAAM,EAANA;AAD4B,KAAP;AAAA,GAAtB;AAGA,CANM;AAQPnxB,WAAW,CACTmgC,GADF,CACMJ,4DADN,EAEC;AACA;AAHD,CAIEp+B,IAJF,CAIO;AACLy+B,EAAAA,iBAAiB,EAAE,IADd;AAELC,EAAAA,iBAAiB,EAAE,IAFd;AAGLC,EAAAA,GAAG,EAAExgC,YAAY,CAAC9K,QAAb,GAAwBm8B,MAHxB;AAILoP,EAAAA,WAAW,EAAE,IAJR;AAKLC,EAAAA,KAAK,EAAE,KALF;AAMLC,EAAAA,aAAa,EAAE;AACdC,IAAAA,WAAW,EAAE,KADC,CACK;;AADL,GANV;AASLC,EAAAA,iBAAiB,EAAE,2BAACC,CAAD,EAAIC,EAAJ,EAAQ/1B,GAAR,EAAgB;AAClC;AACA1b,IAAAA,OAAO,CAAColB,IAAR,yCAA8C1J,GAA9C;AACA,GAZI;AAaLg2B,EAAAA,OAAO,EAAE;AACRC,IAAAA,QAAQ,YAAKC,0EAAL;AADA;AAbJ,CAJP;AAsBO,IAAM1iC,OAAO,GAAG,SAAVA,OAAU,CAACE,IAAD,EAAkC;AACxDsB,EAAAA,YAAY,CAAC1E,QAAb,CAAsB;AACrBskC,IAAAA,SAAS,EAAErwC,8CAAM,CAChBmP,IADgB,EAEhB,UAACrJ,GAAD,EAAM6E,GAAN,EAAc;AACb,UAAMinC,OAAO,GAAGpB,8DAAA,EAAhB;AACAoB,MAAAA,OAAO,CACN;AACA;AAFM,OAGLd,GAHF,CAGMJ,4DAHN,EAIC;AACA;AALD,OAMEp+B,IANF,CAMO;AACLy+B,QAAAA,iBAAiB,EAAE,IADd;AAELC,QAAAA,iBAAiB,EAAE,IAFd;AAGLC,QAAAA,GAAG,EAAExgC,YAAY,CAAC9K,QAAb,GAAwBm8B,MAHxB;AAILoP,QAAAA,WAAW,EAAE,IAJR;AAKLC,QAAAA,KAAK,EAAE,KALF;AAMLC,QAAAA,aAAa,EAAE;AACdC,UAAAA,WAAW,EAAE,KADC,CACK;;AADL,SANV;AASLC,QAAAA,iBAAiB,EAAE,2BAACC,CAAD,EAAIC,EAAJ,EAAQ/1B,GAAR,EAAgB;AAClC;AACA1b,UAAAA,OAAO,CAAColB,IAAR,yCAA8C1J,GAA9C;AACA,SAZI;AAaLg2B,QAAAA,OAAO,EAAE;AACRC,UAAAA,QAAQ,YAAKjB,iDAAS,CAAC9lC,GAAG,CAAC2D,aAAJ,CAAkByR,KAAlB,CAAwB,GAAxB,CAAD,CAAT,CAAwClE,IAAxC,CAA6C,GAA7C,CAAL;AADA;AAbJ,OANP,EAFa,CAyBb;;AACA/V,MAAAA,GAAG,CAAC6E,GAAG,CAACrF,IAAL,CAAH,GAAgBssC,OAAhB;AACA,aAAO9rC,GAAP;AACA,KA9Be,EA+BhB,EA/BgB;AADI,GAAtB;AAmCA,CApCM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClDP;AACA;AACA;AACA;AACA;AACA;AACA;CAEA;AACA;;CAEA;AACA;;AACA+rC,wDAAO,EAEP;;CAEA;;CAEA;;CAGA;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAgBO,IAAME,SAAS,GAAGlsB,2EAAH;AAAA;AAAA;AAAA,qBAAf;;AAIP,IAAMosB,QAA2B,GAAG,SAA9BA,QAA8B,OAS9B;AAAA,MARLC,cAQK,QARLA,cAQK;AAAA,MAPLC,YAOK,QAPLA,YAOK;AAAA,yBANLC,MAMK;AAAA,MANLA,MAMK,4BANI,KAMJ;AAAA,MALL12B,KAKK,QALLA,KAKK;AAAA,MAJL22B,aAIK,QAJLA,aAIK;AAAA,MAHLzK,YAGK,QAHLA,YAGK;AAAA,MADF0K,IACE;;AACL,MAAMC,eAAe,GAAG5yC,kDAAW,CAClC,UAAC6yC,UAAD,EAAaC,MAAb,EAAwB;AACvBP,IAAAA,cAAc,SAAd,IAAAA,cAAc,WAAd,YAAAA,cAAc,CAAG,CAChBO,MAAM,CAACC,UAAP,CAAkB;AAAE9R,MAAAA,MAAM,EAAE;AAAV,KAAlB,CADgB,EAEhB6R,MAAM,CAACC,UAAP,CAAkB;AAAE9R,MAAAA,MAAM,EAAE;AAAV,KAAlB,CAFgB,CAAH,CAAd;AAIA,GANiC,EAOlC,CAACsR,cAAD,CAPkC,CAAnC;;AASA,yBAAkB9wC,0DAAe,EAAjC;AAAA,MAAQwR,KAAR,oBAAQA,KAAR;;AACA,MAAM+/B,YAAY,GAAGzsC,8CAAO,CAC3B;AAAA,WAAO;AACNkO,MAAAA,IAAI,EAAExB,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEggC,qCADP;AAEN3O,MAAAA,QAAQ,EAAErxB,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEigC,mCAFX;AAGN7vB,MAAAA,KAAK,EAAEpQ,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEkgC;AAHR,KAAP;AAAA,GAD2B,EAM3B,CAAClgC,KAAD,CAN2B,CAA5B;AAQA,MAAMwa,QAAQ,GAAGT,6CAAM,EAAvB;AACA,MAAMomB,WAAW,GAAGpzC,kDAAW,CAAC,YAAM;AACrC,QAAIytB,QAAQ,CAACpQ,OAAb,EAAsB;AACrBoQ,MAAAA,QAAQ,CAACpQ,OAAT,CAAiBtB,KAAjB,GAAyB,IAAzB;AACA0R,MAAAA,QAAQ,CAACpQ,OAAT,CAAiB8N,KAAjB;AACA;AACD,GAL8B,EAK5B,EAL4B,CAA/B;;AAMA,wBAAcvZ,8DAAc,EAA5B;AAAA,MAAQhM,CAAR,mBAAQA,CAAR;;AACA,MAAMytC,WAAW,GAAG9sC,8CAAO,CAAC;AAAA,WAAMX,CAAC,CAAC,wBAAD,EAA2B,kBAA3B,CAAP;AAAA,GAAD,EAAwD,CAACA,CAAD,CAAxD,CAA3B;AACA,sBACC,2DAAC,uEAAD;AACC,UAAM,EAAC,MADR;AAEC,kBAAc,EAAC,UAFhB;AAGC,iBAAa,EAAC,YAHf;AAIC,SAAK,EAAE;AAAE8jC,MAAAA,SAAS,EAAE;AAAb;AAJR,kBAMC,2DAAC,SAAD;AACC,QAAI,EAAC,MADN;AAEC,OAAG,EAAEjc,QAFN;AAGC,UAAM,EAAC,SAHR;AAIC,YAAQ,EAAE,oBAAY;AAAA;;AACrB+kB,MAAAA,YAAY,IAAIA,YAAY,CAAC;AAAEM,QAAAA,MAAM,EAAEZ,wDAAV;AAAmBoB,QAAAA,KAAK,EAAE7lB,QAAF,aAAEA,QAAF,4CAAEA,QAAQ,CAAEpQ,OAAZ,sDAAE,kBAAmBi2B;AAA7C,OAAD,CAA5B;AACA,KANF;AAOC,YAAQ;AAPT,IAND,eAgBC,2DAAC,2DAAD;AACC,gBAAY,EAAErL,YADf;AAEC,SAAK,EAAElsB,KAFR;AAGC,QAAI,EAAE;AACLw3B,MAAAA,WAAW,YAAKb,aAAL,+CADN;AAELc,MAAAA,KAAK,EAAE,eAACV,MAAD,EAAuB;AAC7B,YAAIN,YAAJ,EACCM,MAAM,CAACW,EAAP,CAAUC,QAAV,CAAmBC,aAAnB,CAAiC,eAAjC,EAAkD;AACjDjoC,UAAAA,IAAI,EAAE,SAD2C;AAEjDoiB,UAAAA,OAAO,EAAE,cAFwC;AAGjD/Z,UAAAA,KAAK,EAAE,eAAC6/B,QAAD,EAAmB;AACzB,gBAAMld,KAAK,GAAG,CACb;AACC5X,cAAAA,IAAI,EAAE,UADP;AAEC0H,cAAAA,IAAI,EAAE6sB,WAFP;AAGCQ,cAAAA,QAAQ,EAAE,oBAAY;AACrBT,gBAAAA,WAAW;AACX;AALF,aADa,CAAd;AASAQ,YAAAA,QAAQ,CAACld,KAAD,CAAR;AACA;AAdgD,SAAlD;AAgBD,OApBI;AAqBLod,MAAAA,UAAU,EAAE,GArBP;AAsBLC,MAAAA,UAAU,EAAE,IAtBP;AAuBLC,MAAAA,OAAO,EAAE,KAvBJ;AAwBLC,MAAAA,SAAS,EAAE,KAxBN;AAyBLC,MAAAA,QAAQ,EAAE,KAzBL;AA0BLC,MAAAA,MAAM,EAAE,IA1BH;AA2BL1B,MAAAA,MAAM,EAANA,MA3BK;AA4BL2B,MAAAA,gBAAgB,EACf,+EA7BI;AA8BLC,MAAAA,eAAe,EAAE,KA9BZ;AA+BLC,MAAAA,aAAa,EAAE,CACd;AACCh6B,QAAAA,KAAK,EAAE,SADR;AAECoc,QAAAA,KAAK,EAAE,CACN;AAAEpc,UAAAA,KAAK,EAAE,IAAT;AAAei6B,UAAAA,KAAK,EAAE;AAAtB,SADM,EAEN;AAAEj6B,UAAAA,KAAK,EAAE,IAAT;AAAei6B,UAAAA,KAAK,EAAE;AAAtB,SAFM,EAGN;AAAEj6B,UAAAA,KAAK,EAAE,IAAT;AAAei6B,UAAAA,KAAK,EAAE;AAAtB,SAHM,EAIN;AAAEj6B,UAAAA,KAAK,EAAE,IAAT;AAAei6B,UAAAA,KAAK,EAAE;AAAtB,SAJM,EAKN;AAAEj6B,UAAAA,KAAK,EAAE,IAAT;AAAei6B,UAAAA,KAAK,EAAE;AAAtB,SALM,EAMN;AAAEj6B,UAAAA,KAAK,EAAE,IAAT;AAAei6B,UAAAA,KAAK,EAAE;AAAtB,SANM;AAFR,OADc,EAYd;AACCj6B,QAAAA,KAAK,EAAE,QADR;AAECoc,QAAAA,KAAK,EAAE,CACN;AAAEpc,UAAAA,KAAK,EAAE,GAAT;AAAci6B,UAAAA,KAAK,EAAE;AAArB,SADM,EAEN;AAAEj6B,UAAAA,KAAK,EAAE,KAAT;AAAgBi6B,UAAAA,KAAK,EAAE;AAAvB,SAFM,EAGN;AAAEj6B,UAAAA,KAAK,EAAE,KAAT;AAAgBi6B,UAAAA,KAAK,EAAE;AAAvB,SAHM;AAFR,OAZc,EAqBd;AACCj6B,QAAAA,KAAK,EAAE,YADR;AAECoc,QAAAA,KAAK,EAAE,CACN;AAAEpc,UAAAA,KAAK,EAAE,SAAT;AAAoBi6B,UAAAA,KAAK,EAAE,SAA3B;AAAsCC,UAAAA,OAAO,EAAE,IAA/C;AAAqDC,UAAAA,cAAc,EAAE;AAArE,SADM,EAEN;AAAEn6B,UAAAA,KAAK,EAAE,SAAT;AAAoBi6B,UAAAA,KAAK,EAAE,SAA3B;AAAsCC,UAAAA,OAAO,EAAE,IAA/C;AAAqDC,UAAAA,cAAc,EAAE;AAArE,SAFM,EAGN;AAAEn6B,UAAAA,KAAK,EAAE,YAAT;AAAuBi6B,UAAAA,KAAK,EAAE,YAA9B;AAA4CC,UAAAA,OAAO,EAAE;AAArD,SAHM,EAIN;AAAEl6B,UAAAA,KAAK,EAAE,QAAT;AAAmBi6B,UAAAA,KAAK,EAAE,QAA1B;AAAoCC,UAAAA,OAAO,EAAE;AAA7C,SAJM,EAKN;AAAEl6B,UAAAA,KAAK,EAAE,OAAT;AAAkBi6B,UAAAA,KAAK,EAAE,OAAzB;AAAkCC,UAAAA,OAAO,EAAE;AAA3C,SALM,EAMN;AAAEl6B,UAAAA,KAAK,EAAE,QAAT;AAAmBi6B,UAAAA,KAAK,EAAE,QAA1B;AAAoCC,UAAAA,OAAO,EAAE;AAA7C,SANM;AAFR,OArBc,CA/BV;AAgELE,MAAAA,OAAO,EAAE,CACR,SADQ,EAER,UAFQ,EAGR,OAHQ,EAIR,MAJQ,EAKR,OALQ,EAMR,MANQ,EAOR,MAPQ,EAQR,SARQ,EASR,OATQ,EAUR,SAVQ,EAWR,QAXQ,EAYR,eAZQ,EAaR,MAbQ,EAcR,YAdQ,EAeR,gBAfQ,EAgBR,OAhBQ,EAiBR,OAjBQ,EAkBR,OAlBQ,EAmBR,MAnBQ,EAoBR,MApBQ,EAqBR,WArBQ,EAsBR,gBAtBQ,EAuBR,YAvBQ,EAwBR,cAxBQ,CAhEJ;AA2FLC,MAAAA,OAAO,EAAElC,MAAM,GACZ,KADY,GAEZ;AACA,wQA9FE;AA+FLmC,MAAAA,wBAAwB,EAAEnC,MAAM,GAAG,iBAAH,GAAuB,EA/FlD;AAgGLoC,MAAAA,2BAA2B,EAAEpC,MAAM,GAChC,wEADgC,GAEhC,WAlGE;AAmGLqC,MAAAA,WAAW,EAAErC,MAAM,GAAG,EAAH,GAAQ,EAnGtB;AAoGLsC,MAAAA,YAAY,EAAE,MApGT;AAqGLC,MAAAA,iBAAiB,EAAE,KArGd;AAsGLC,MAAAA,aAAa,4BAAqBjC,YAArB,aAAqBA,YAArB,uBAAqBA,YAAY,CAAE3vB,KAAnC,0BAAwD2vB,YAAxD,aAAwDA,YAAxD,uBAAwDA,YAAY,CAAE1O,QAAtE,4BAAgG0O,YAAhG,aAAgGA,YAAhG,uBAAgGA,YAAY,CAAEv+B,IAA9G,QAtGR;AAuGLygC,MAAAA,0BAA0B,EAAE,KAvGvB;AAwGLC,MAAAA,4BAA4B,EAAE;AAxGzB,KAHP;AA6GC,kBAAc,EAAEvC;AA7GjB,KA8GKD,IA9GL,EAhBD,CADD;AAmIA,CAxKD;;AA0KA,iEAAeL,QAAf;;;;;;;;;;;;;;;;;;;;;;;;;;;AC9OA;AACA;AACA;AACA;AACA;;AAEA;;AACA;AAEA;AACA;AACA;AAEA;AACA;CAEA;;AACO,IAAMrxC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAC8J,EAAD,EAAqC;AAAA;;AACrE,MAAMsqC,WAAW,4BAAGxtC,iEAAA,GAAgCytC,KAAnC,0DAAG,sBAAwCvqC,EAAxC,CAApB,CADqE,CAErE;;AACA,SAAOsqC,WAAW,GAAG,CAACA,WAAD,EAAc,IAAd,CAAH,GAAyB,CAAC,YAAY,CAAE,CAAf,EAAiB,KAAjB,CAA3C;AACA,CAJM,EAKP;;AACO,IAAMr0C,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAC+J,EAAD,EAAqC;AAAA;;AACzE,MAAMsqC,WAAW,6BAAGxtC,iEAAA,GAAgC3B,SAAnC,2DAAG,uBAA4C6E,EAA5C,CAApB,CADyE,CAEzE;;AACA,SAAOsqC,WAAW,GAAG,CAACA,WAAD,EAAc,IAAd,CAAH,GAAyB,CAAC,YAAY,CAAE,CAAf,EAAiB,KAAjB,CAA3C;AACA,CAJM;AAMA,IAAMt0C,sBAAsB,GAAG,SAAzBA,sBAAyB,CAACgK,EAAD,EAAuD;AAAA;;AAC5F,MAAMwqC,WAAW,6BAAG1tC,iEAAA,GAAgCgb,UAAnC,2DAAG,uBAA6C9X,EAA7C,CAApB;;AACA,MAAIwqC,WAAJ,EAAiB;AAChB,QAAMC,CAAK,GAAG,SAARA,CAAQ,CAAC55B,KAAD;AAAA,0BACb,2DAAC,sEAAD;AAAoB,WAAG,EAAE25B,WAAW,CAACvqC;AAArC,sBAGC,2DAAC,WAAD,CAAa,IAAb,EAAsB4Q,KAAtB,CAHD,CADa;AAAA,KAAd;;AAOA,WAAO,CAAC45B,CAAD,EAAI,IAAJ,CAAP;AACA;;AACD,SAAO,CAAC;AAAA,WAAY,IAAZ;AAAA,GAAD,EAAmB,KAAnB,CAAP;AACA,CAbM;AAeA,IAAM50C,UAAU,GAAG,SAAbA,UAAa,CAAKuoB,MAAL,EAAgBrK,IAAhB,EAAgD;AACzE,MAAM22B,SAAS,GAAG5tC,iEAAA,GAAgCu/B,OAAhC,CAAwCtoB,IAAxC,CAAlB;AACA,SAAOs2B,+CAAO,CACb3uC,2CAAG,CAACgvC,SAAD,EAAY,UAACrvC,CAAD,EAAO;AACrB,QAAI;AACH,UAAM+c,MAAM,GAAG/c,CAAC,CAAC+iB,MAAD,CAAhB;AACA,aAAOhG,MAAP;AACA,KAHD,CAGE,OAAOpV,CAAP,EAAU;AACX;AACA3N,MAAAA,OAAO,CAACD,KAAR,CAAc4N,CAAd;AACA,aAAO8Q,SAAP;AACA;AACD,GATE,CADU,CAAd;AAYA,CAdM;AAgBA,IAAMhe,iBAAiB,GAAG,SAApBA,iBAAoB,CAACie,IAAD,EAAqD;AACrF,MAAM22B,SAAS,GAAG5tC,iEAAA,GAAgCu/B,OAAhC,CAAwCtoB,IAAxC,CAAlB;AACA,SAAO,UAAKqK,MAAL;AAAA,WACNisB,+CAAO,CACN3uC,2CAAG,CAACgvC,SAAD,EAAY,UAACrvC,CAAD,EAAO;AACrB,UAAI;AACH,YAAM+c,MAAM,GAAG/c,CAAC,CAAC+iB,MAAD,CAAhB;AACA,eAAOhG,MAAP;AACA,OAHD,CAGE,OAAOpV,CAAP,EAAU;AACX;AACA3N,QAAAA,OAAO,CAACD,KAAR,CAAc4N,CAAd;AACA,eAAO8Q,SAAP;AACA;AACD,KATE,CADG,CADD;AAAA,GAAP;AAaA,CAfM;AAiBA,IAAMle,SAAS,GAAG,SAAZA,SAAY,CACxBme,IADwB,EAExB/T,EAFwB,EAGxBoe,MAHwB,EAIW;AAAA;;AACnC,MAAMusB,OAAO,6BAAG7tC,iEAAA,GAAgCu/B,OAAhC,CAAwCtoB,IAAxC,CAAH,2DAAG,uBAAgD/T,EAAhD,CAAhB;AACA,MAAMoY,MAAM,GAAGuyB,OAAH,aAAGA,OAAH,uBAAGA,OAAO,CAAGvsB,MAAH,CAAtB;AACA,SAAO,CAAChG,MAAD,EAAS,CAAC,CAACA,MAAX,CAAP;AACA,CARM;AAUA,IAAMriB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAC/Bge,IAD+B,EAE/B/T,EAF+B,EAGc;AAAA;;AAC7C,MAAM2qC,OAAO,6BAAG7tC,iEAAA,GAAgCu/B,OAAhC,CAAwCtoB,IAAxC,CAAH,2DAAG,uBAAgD/T,EAAhD,CAAhB;AACA,SAAO,CAAC2qC,OAAD,EAAU,CAAC,CAACA,OAAZ,CAAP;AACA,CANM;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvFP;AACA;AACA;AACA;AACA;;AAEA;;AACA;AAEA;AACA;AACA;AAEA;AACA;CAEA;;AACO,IAAMpzC,iBAAiB,GAAG,SAApBA,iBAAoB,CAACyI,EAAD,EAAqC;AACrE,MAAMsqC,WAAW,GAAGxtC,4DAAoB,CAAC,UAACd,CAAD;AAAA;;AAAA,uBAAOA,CAAC,CAACuuC,KAAT,6CAAO,SAAUvqC,EAAV,CAAP;AAAA,GAAD,CAAxC,CADqE,CAErE;;AACA,SAAOsqC,WAAW,GAAG,CAACA,WAAD,EAAc,IAAd,CAAH,GAAyB,CAAC,YAAY,CAAE,CAAf,EAAiB,KAAjB,CAA3C;AACA,CAJM,EAKP;;AACO,IAAMhzC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAAC0I,EAAD,EAAqC;AACzE,MAAMsqC,WAAW,GAAGxtC,4DAAoB,CAAC,UAACd,CAAD;AAAA;;AAAA,2BAAOA,CAAC,CAACb,SAAT,iDAAO,aAAc6E,EAAd,CAAP;AAAA,GAAD,CAAxC,CADyE,CAEzE;;AACA,SAAOsqC,WAAW,GAAG,CAACA,WAAD,EAAc,IAAd,CAAH,GAAyB,CAAC,YAAY,CAAE,CAAf,EAAiB,KAAjB,CAA3C;AACA,CAJM;AAMA,IAAMjzC,sBAAsB,GAAG,SAAzBA,sBAAyB,CAAC2I,EAAD,EAAuD;AAC5F,MAAMwqC,WAAW,GAAG1tC,4DAAoB,CAAC,UAACd,CAAD;AAAA;;AAAA,4BAAOA,CAAC,CAAC8b,UAAT,kDAAO,cAAe9X,EAAf,CAAP;AAAA,GAAD,CAAxC;AACA,SAAOxE,8CAAO,CAAC,YAAM;AACpB,QAAIgvC,WAAJ,EAAiB;AAChB,UAAMC,CAAK,GAAG,SAARA,CAAQ,CAAC55B,KAAD;AAAA,4BACb,2DAAC,sEAAD;AAAoB,aAAG,EAAE25B,WAAW,CAACvqC;AAArC,wBAGC,2DAAC,WAAD,CAAa,IAAb,EAAsB4Q,KAAtB,CAHD,CADa;AAAA,OAAd;;AAOA,aAAO,CAAC45B,CAAD,EAAI,IAAJ,CAAP;AACA;;AACD,WAAO,CAAC;AAAA,aAAY,IAAZ;AAAA,KAAD,EAAmB,KAAnB,CAAP;AACA,GAZa,EAYX,CAACD,WAAD,CAZW,CAAd;AAaA,CAfM;AAiBA,IAAMtzC,UAAU,GAAG,SAAbA,UAAa,CAAKknB,MAAL,EAAgBrK,IAAhB,EAAgD;AACzE,MAAM22B,SAAS,GAAG5tC,4DAAoB,CAAC,UAACd,CAAD;AAAA,WAAOA,CAAC,CAACqgC,OAAF,CAAUtoB,IAAV,CAAP;AAAA,GAAD,CAAtC;AACA,MAAMsoB,OAAO,GAAG7gC,8CAAO,CACtB;AAAA;;AAAA,uBACC6uC,+CAAO,CACN3uC,2CAAG,CAACgvC,SAAD,EAAY,UAACrvC,CAAD,EAAO;AACrB,UAAI;AACH,YAAM+c,MAAM,GAAG/c,CAAC,CAAC+iB,MAAD,CAAhB;AACA,eAAOhG,MAAP;AACA,OAHD,CAGE,OAAOpV,CAAP,EAAU;AACX;AACA3N,QAAAA,OAAO,CAACD,KAAR,CAAc4N,CAAd;AACA,eAAO8Q,SAAP;AACA;AACD,KATE,CADG,CADR,+CAYM,EAZN;AAAA,GADsB,EActB,CAAC42B,SAAD,EAAYtsB,MAAZ,CAdsB,CAAvB;AAgBA,SAAOie,OAAP;AACA,CAnBM;AAqBA,IAAMllC,iBAAiB,GAAG,SAApBA,iBAAoB,CAAK4c,IAAL,EAAgD;AAChF,MAAM22B,SAAS,GAAG5tC,4DAAoB,CAAC,UAACd,CAAD;AAAA,WAAOA,CAAC,CAACqgC,OAAF,CAAUtoB,IAAV,CAAP;AAAA,GAAD,CAAtC;AACA,MAAM62B,eAAe,GAAG31C,kDAAW,CAClC,UAACmpB,MAAD;AAAA,WACCisB,+CAAO,CACN3uC,2CAAG,CAACgvC,SAAD,EAAY,UAACrvC,CAAD,EAAO;AACrB,UAAI;AACH,YAAM+c,MAAM,GAAG/c,CAAC,CAAC+iB,MAAD,CAAhB;AACA,eAAOhG,MAAP;AACA,OAHD,CAGE,OAAOpV,CAAP,EAAU;AACX;AACA3N,QAAAA,OAAO,CAACD,KAAR,CAAc4N,CAAd;AACA,eAAO8Q,SAAP;AACA;AACD,KATE,CADG,CADR;AAAA,GADkC,EAclC,CAAC42B,SAAD,CAdkC,CAAnC;AAgBA,SAAOE,eAAP;AACA,CAnBM;AAqBA,IAAM3zC,SAAS,GAAG,SAAZA,SAAY,CACxB8c,IADwB,EAExB/T,EAFwB,EAGxBoe,MAHwB,EAIW;AACnC,MAAMusB,OAAO,GAAG7tC,4DAAoB,CAAC,UAACd,CAAD;AAAA,WAAOA,CAAC,CAACqgC,OAAF,CAAUtoB,IAAV,EAAgB/T,EAAhB,CAAP;AAAA,GAAD,CAApC;AACA,MAAMoY,MAAM,GAAG5c,8CAAO,CAAC,YAAM;AAC5B,QAAI;AACH,aAAOmvC,OAAP,aAAOA,OAAP,uBAAOA,OAAO,CAAGvsB,MAAH,CAAd;AACA,KAFD,CAEE,OAAOpb,CAAP,EAAU;AACX,aAAO8Q,SAAP;AACA;AACD,GANqB,EAMnB,CAAC62B,OAAD,EAAUvsB,MAAV,CANmB,CAAtB;AAOA,SAAO,CAAChG,MAAD,EAAS,CAAC,CAACA,MAAX,CAAP;AACA,CAdM;AAgBA,IAAMhhB,gBAAgB,GAAG,SAAnBA,gBAAmB,CAC/B2c,IAD+B,EAE/B/T,EAF+B,EAGc;AAC7C,MAAM2qC,OAAO,GAAG7tC,4DAAoB,CAAC,UAACd,CAAD;AAAA,WAAOA,CAAC,CAACqgC,OAAF,CAAUtoB,IAAV,EAAgB/T,EAAhB,CAAP;AAAA,GAAD,CAApC;AACA,SAAO,CAAC2qC,OAAD,EAAU,CAAC,CAACA,OAAZ,CAAP;AACA,CANM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxGP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AAEO,IAAM7tC,oBAAoB,GAAGwiB,oDAAM,CAAoB,UAAC7F,GAAD;AAAA,SAAU;AACvE4iB,IAAAA,OAAO,EAAE,EAD8D;AAEvEvkB,IAAAA,UAAU,EAAE;AACX+yB,MAAAA,QAAQ,EAAE;AACTv5B,QAAAA,IAAI,EAAEi2B,kDADG;AAETtnC,QAAAA,GAAG,EAAEL,iDAAYA;AAFR;AADC,KAF2D;AAQvE2qC,IAAAA,KAAK,EAAE,EARgE;AASvEpvC,IAAAA,SAAS,EAAE,EAT4D;AAUvE0D,IAAAA,eAAe,EAAE;AAAA,wCACb8sB,KADa;AACbA,QAAAA,KADa;AAAA;;AAAA,aAGhBlS,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAW;AAClBqN,QAAAA,gDAAO,CAACib,KAAD,EAAQ,gBAA0B;AAAA,cAAvB3rB,EAAuB,QAAvBA,EAAuB;AAAA,cAAnBoY,MAAmB,QAAnBA,MAAmB;AAAA,cAAXrE,IAAW,QAAXA,IAAW;AACxC,cAAI,CAAC1Q,KAAK,CAACg5B,OAAN,CAActoB,IAAd,CAAL,EAA0B1Q,KAAK,CAACg5B,OAAN,CAActoB,IAAd,IAAsB,EAAtB;AAC1B1Q,UAAAA,KAAK,CAACg5B,OAAN,CAActoB,IAAd,EAAoB/T,EAApB,IAA0BoY,MAA1B;AACA,SAHM,CAAP;AAIA,OALM,CADL,CAHa;AAAA,KAVsD;AAqBvErZ,IAAAA,kBAAkB,EACjB,4BAACkB,GAAD;AAAA,aACA;AAAA,2CAAI0rB,KAAJ;AAAIA,UAAAA,KAAJ;AAAA;;AAAA,eACClS,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAW;AAClBqN,UAAAA,gDAAO,CAACib,KAAD,EAAQ,iBAAuB;AAAA,gBAApB3rB,EAAoB,SAApBA,EAAoB;AAAA,gBAAhBG,SAAgB,SAAhBA,SAAgB;AACrCkD,YAAAA,KAAK,CAACyU,UAAN,CAAiB9X,EAAjB,IAAuB;AAAEC,cAAAA,GAAG,EAAHA,GAAF;AAAOqR,cAAAA,IAAI,EAAEnR;AAAb,aAAvB;AACA,WAFM,CAAP;AAGA,SAJM,CADL,CADJ;AAAA,OADA;AAAA,KAtBsE;AA+BvE1B,IAAAA,aAAa,EAAE;AAAA,yCAAIktB,KAAJ;AAAIA,QAAAA,KAAJ;AAAA;;AAAA,aACdlS,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAW;AAClBqN,QAAAA,gDAAO,CAACib,KAAD,EAAQ,iBAAkB;AAAA,cAAf3rB,EAAe,SAAfA,EAAe;AAAA,cAAX8qC,IAAW,SAAXA,IAAW;AAChCznC,UAAAA,KAAK,CAACknC,KAAN,CAAYvqC,EAAZ,IAAkB8qC,IAAlB;AACA,SAFM,CAAP;AAGA,OAJM,CADL,CADW;AAAA,KA/BwD;AAuCvEnsC,IAAAA,iBAAiB,EAAE;AAAA,yCAAIgtB,KAAJ;AAAIA,QAAAA,KAAJ;AAAA;;AAAA,aAClBlS,GAAG,CACFva,kDAAO,CAAC,UAACmE,KAAD,EAAW;AAClBqN,QAAAA,gDAAO,CAACib,KAAD,EAAQ,iBAAgB;AAAA,cAAb3rB,EAAa,SAAbA,EAAa;AAAA,cAAT+qC,EAAS,SAATA,EAAS;AAC9B1nC,UAAAA,KAAK,CAAClI,SAAN,CAAgB6E,EAAhB,IAAsB+qC,EAAtB;AACA,SAFM,CAAP;AAGA,OAJM,CADL,CADe;AAAA,KAvCoD;AA+CvEjsC,IAAAA,aAAa,EAAE;AAAA,yCAAIksC,GAAJ;AAAIA,QAAAA,GAAJ;AAAA;;AAAA,aACdvxB,GAAG,CAAC,UAACzd,CAAD;AAAA,+CACAA,CADA;AAEHqgC,UAAAA,OAAO,EAAE/mC,+CAAM,CACd0G,CAAC,CAACqgC,OADY,EAEd,UAACjhC,GAAD,EAAMihC,OAAN,EAAetoB,IAAf;AAAA,mDAA8B3Y,GAA9B,8FAAoC2Y,IAApC,EAA2CyuB,6CAAI,CAACnG,OAAD,EAAU2O,GAAV,CAA/C;AAAA,WAFc,EAGd,EAHc;AAFZ;AAAA,OAAD,CADW;AAAA,KA/CwD;AAwDvEhsC,IAAAA,gBAAgB,EAAE;AAAA,yCAAIgsC,GAAJ;AAAIA,QAAAA,GAAJ;AAAA;;AAAA,aACjBvxB,GAAG,CAAC,UAACzd,CAAD;AAAA,+CACAA,CADA;AAEHqgC,UAAAA,OAAO,EAAEmG,6CAAI,CAACxmC,CAAC,CAAC8b,UAAH,EAAekzB,GAAf;AAFV;AAAA,OAAD,CADc;AAAA,KAxDqD;AA6DvEtsC,IAAAA,WAAW,EAAE;AAAA,yCAAIssC,GAAJ;AAAIA,QAAAA,GAAJ;AAAA;;AAAA,aACZvxB,GAAG,CAAC,UAACzd,CAAD;AAAA,+CACAA,CADA;AAEHqgC,UAAAA,OAAO,EAAEmG,6CAAI,CAACxmC,CAAC,CAACuuC,KAAH,EAAUS,GAAV;AAFV;AAAA,OAAD,CADS;AAAA,KA7D0D;AAkEvEpsC,IAAAA,eAAe,EAAE;AAAA,yCAAIosC,GAAJ;AAAIA,QAAAA,GAAJ;AAAA;;AAAA,aAChBvxB,GAAG,CAAC,UAACzd,CAAD;AAAA,+CACAA,CADA;AAEHqgC,UAAAA,OAAO,EAAEmG,6CAAI,CAACxmC,CAAC,CAACb,SAAH,EAAc6vC,GAAd;AAFV;AAAA,OAAD,CADa;AAAA;AAlEsD,GAAV;AAAA,CAApB,CAAnC;;;;;;;;;;;;;;;;;ACbP;AACA;AACA;AACA;AACA;AAEA;AAEO,IAAM5xC,SAAS,GAAG,SAAZA,SAAY,GAAoB;AAC5C,MAAM+b,MAAM,GAAGhB,uDAAe,CAAC,UAACnY,CAAD;AAAA;;AAAA,wBAAOA,CAAC,CAACmZ,MAAT,iDAAmB,EAAnB;AAAA,GAAD,CAA9B;AACA,SAAOA,MAAP;AACA,CAHM;AAIA,IAAM9b,UAAU,GAAG,SAAbA,UAAa;AAAA,SAAmB8a,uDAAe,CAAC,UAACnY,CAAD;AAAA;;AAAA,yBAAOA,CAAC,CAACua,OAAT,mDAAoB,EAApB;AAAA,GAAD,CAAlC;AAAA,CAAnB;;;;;;;;;;;;;;;;;;;ACZP;AACA;AACA;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AAEA;AAGA;AACA;AACO,IAAMpC,eAAe,GAAGmL,mDAAM,CAAe;AAAA,SAAO;AAC1DhL,IAAAA,eAAe,EAAE,KADyC;AAE1DqC,IAAAA,GAAG,EAAE;AAFqD,GAAP;AAAA,CAAf,CAA9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACXP;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AAEO,IAAMvC,UAAU,GAAG,SAAbA,UAAa;AAAA,MAAGmC,OAAH,QAAGA,OAAH;AAAA,MAAYpB,MAAZ,QAAYA,MAAZ;AAAA,SACzB,IAAIzS,OAAJ,CAAY,UAACqN,CAAD,EAAO;AAClB,gCAAgBoE,4DAAA,EAAhB;AAAA,QAAQwC,GAAR,yBAAQA,GAAR;;AACA,QAAIJ,OAAJ,EAAa;AAAA;;AACZ00B,MAAAA,2DAAA,CAAsB;AACrB5yB,QAAAA,EAAE,EAAE,SADiB;AAErB+yB,QAAAA,IAAI,EAAE70B,OAAO,CAAC60B;AAFO,OAAtB;AAIAlG,MAAAA,8DAAA,CAAyB;AACxB7sB,QAAAA,EAAE,EAAE,SADoB;AAExBysB,QAAAA,MAAM,qBAAEvuB,OAAO,CAACuuB,MAAV,6DAAoB;AAFF,OAAzB;AAIA;;AACD,QAAI3vB,MAAJ,aAAIA,MAAJ,eAAIA,MAAM,CAAE8H,MAAZ,EAAoB;AACnBvM,MAAAA,+CAAO,CAACyE,MAAD,EAAS,UAAC7D,IAAD,EAAU;AACzB,YAAIA,IAAI,CAACqF,GAAL,GAAWA,GAAf,EAAoB;AACnBs0B,UAAAA,2DAAA,CAAsB;AACrB5yB,YAAAA,EAAE,EAAE,QADiB;AAErBlD,YAAAA,MAAM,EAAE7D,IAFa;AAGrBjO,YAAAA,KAAK,EAAE6nC,uDAAA,GAAuBE;AAHT,WAAtB;AAKAlG,UAAAA,8DAAA,CAAyB;AACxB7sB,YAAAA,EAAE,EAAE,QADoB;AAExBlD,YAAAA,MAAM,EAAE7D,IAFgB;AAGxBjO,YAAAA,KAAK,EAAE4gC,4DAAA,GAA0BM;AAHT,WAAzB;AAKA;AACD,OAbM,CAAP;AAcA;;AACDx0B,IAAAA,CAAC;AACD,GA7BD,CADyB;AAAA,CAAnB,EA+BP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;ACtEA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAEA;;AACA;;AAEO,IAAM5W,OAAO,GAAG,SAAVA,OAAU,CAAC6xC,GAAD;AAAA,SACtBE,mDAAW,CAAC,UAAClvC,CAAD;AAAA,WAAQgvC,GAAG,GAAGK,4CAAI,CAACrvC,CAAC,CAACovC,IAAH,EAASJ,GAAT,CAAP,GAAuBhvC,CAAC,CAACovC,IAApC;AAAA,GAAD,CADW;AAAA,CAAhB;AAEA,IAAMlyC,OAAO,GAAG,SAAVA,OAAU,CAAC8xC,GAAD;AAAA,SACtBA,GAAG,GAAGK,4CAAI,CAACH,wDAAA,GAAuBE,IAAxB,EAA8BJ,GAA9B,CAAP,GAA4CE,wDAAA,GAAuBE,IADhD;AAAA,CAAhB;;;;;;;;;;;;;;;;;;;ACfP;AACA;AACA;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAEO,IAAMF,WAAW,GAAG5rB,mDAAM,CAAW;AAAA,SAAO;AAClD8rB,IAAAA,IAAI,EAAE;AAD4C,GAAP;AAAA,CAAX,CAA1B;;AAIPH,yDAAA,GAAsB,gBAAoB;AAAA,MAAjBptC,IAAiB,QAAjBA,IAAiB;AACzCqtC,EAAAA,WAAW,CAAC7pC,QAAZ,CAAqBxD,IAArB;AACA,CAFD;;;;;;;;;;;;;;;;;;;;;;;;;ACdA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAKO,IAAMqE,OAAyB,GAAG,SAA5BA,OAA4B,OAA4B;AAAA,MAAzBspC,EAAyB,QAAzBA,EAAyB;AAAA,MAArBjuC,KAAqB,QAArBA,KAAqB;AAAA,MAAXqqC,IAAW;;AACpE,MAAM6D,GAAG,GAAGjwC,8CAAO,CAAC;AAAA,WAAMyU,2DAAW,CAAC;AAAEG,MAAAA,IAAI,EAAEo7B,EAAR;AAAYjuC,MAAAA,KAAK,EAALA;AAAZ,KAAD,CAAjB;AAAA,GAAD,EAAyC,CAACA,KAAD,EAAQiuC,EAAR,CAAzC,CAAnB;;AACA,sBAAO,2DAAC,kDAAD;AAAQ,SAAK,EAAE;AAAEE,MAAAA,cAAc,EAAE;AAAlB,KAAf;AAA2C,MAAE,EAAED;AAA/C,KAAwD7D,IAAxD,EAAP;AACA,CAHM;;;;;;;;;;;;;;;;;;;;;;;;;ACbP;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AAEO,IAAMrS,iBAGX,GAAG,SAHQA,iBAGR,OAAgC;AAAA,MAA7BxgC,QAA6B,QAA7BA,QAA6B;AAAA,MAAnB62C,IAAmB,QAAnBA,IAAmB;AAAA,MAAb/hB,MAAa,QAAbA,MAAa;AACpC,MAAMziB,OAAO,GAAGb,4DAAU,EAA1B;AACA,MAAMslC,mBAAmB,GAAGrwC,8CAAO,CAAC;AAAA,WAAM4L,OAAO,CAAC+G,QAAR,CAAiBC,QAAvB;AAAA,GAAD,EAAkC,CAAChH,OAAD,CAAlC,CAAnC;;AACA,kBAAwCqB,+CAAQ,CAAC,KAAD,CAAhD;AAAA;AAAA,MAAOqjC,YAAP;AAAA,MAAqBC,eAArB;;AACA,mBAAwCtjC,+CAAQ,CAAWojC,mBAAX,CAAhD;AAAA;AAAA,MAAOG,YAAP;AAAA,MAAqBC,eAArB;;AACA,mBAAsDxjC,+CAAQ,CAAC,KAAD,CAA9D;AAAA;AAAA,MAAOyjC,mBAAP;AAAA,MAA4BC,sBAA5B;;AACA,wBAAYtlC,6DAAc,EAA1B;AAAA;AAAA,MAAOhM,CAAP;;AACA,MAAM2wB,OAAO,GAAG,SAAVA,OAAU,GAAY;AAC3BugB,IAAAA,eAAe,CAAC,KAAD,CAAf;AACAI,IAAAA,sBAAsB,CAAC,IAAD,CAAtB;AACA,GAHD;;AAIA,MAAMC,uBAAuB,GAAG,SAA1BA,uBAA0B,CAACC,YAAD,EAAqC;AACpE,QACC,CAACH,mBAAD,IACAG,YAAY,CAACj+B,QAAb,MAA2B,CAAA49B,YAAY,SAAZ,IAAAA,YAAY,WAAZ,YAAAA,YAAY,CAAE59B,QAAd,KAA0By9B,mBAArD,CAFD,EAGE;AACDE,MAAAA,eAAe,CAAC,IAAD,CAAf;AACAE,MAAAA,eAAe,CAACI,YAAD,CAAf;AACA,aAAO,KAAP;AACA;;AACD,WAAO,IAAP;AACA,GAVD;;AAWA,MAAMjhB,SAAS,GAAG,SAAZA,SAAY,GAAY;AAC7B2gB,IAAAA,eAAe,CAAC,KAAD,CAAf;AACAliB,IAAAA,MAAM;AACNsiB,IAAAA,sBAAsB,CAAC,IAAD,CAAtB;AACA,GAJD;;AAKAhmC,EAAAA,gDAAS,CAAC,YAAM;AACf,QAAI+lC,mBAAmB,IAAIF,YAA3B,EAAyC;AACxC;AACA5kC,MAAAA,OAAO,CAACtF,IAAR,CAAakqC,YAAY,CAAC59B,QAA1B;AACA;AACD,GALQ,EAKN,CAAC89B,mBAAD,EAAsB9kC,OAAtB,EAA+B4kC,YAA/B,CALM,CAAT;AAMA,sBACC,uIACC,2DAAC,oDAAD;AAAQ,QAAI,EAAEJ,IAAd;AAAoB,WAAO,EAAEQ;AAA7B,IADD,eAGC,2DAAC,kEAAD;AACC,QAAI,EAAEN,YADP;AAEC,WAAO,EAAEtgB,OAFV;AAGC,aAAS,EAAEJ,SAHZ;AAIC,SAAK,EAAEvwB,CAAC,CAAC,uBAAD,EAA0B,0BAA1B,CAJT;AAKC,gBAAY,EAAEA,CAAC,CAAC,oBAAD,EAAuB,cAAvB,CALhB;AAMC,gBAAY,EAAEA,CAAC,CAAC,sBAAD,EAAyB,gBAAzB;AANhB,KAQE9F,QARF,CAHD,CADD;AAgBA,CApDM;AAqDP,iEAAewgC,iBAAf;;;;;;;;;;;;;;;;;;;;;ACjEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEO,IAAMtzB,OAAW,GAAG,SAAdA,OAAc;AAAA,sBAC1B,2DAAC,sEAAD;AAAW,SAAK,EAAC,MAAjB;AAAwB,UAAM,EAAC,MAA/B;AAAsC,iBAAa,EAAC,QAApD;AAA6D,kBAAc,EAAC;AAA5E,kBAEC,2DAAC,mEAAD;AAAQ,QAAI,EAAC,OAAb;AAAqB,SAAK,EAAC,QAA3B;AAAoC,SAAK,EAAC,SAA1C;AAAoD,WAAO,MAA3D;AAA4D,WAAO,EAAE2W,wCAAIA;AAAzE,IAFD,CAD0B;AAAA,CAApB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACVP;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAM2zB,cAAyC,GAAG,SAA5CA,cAA4C,OAAc;AAAA,MAAXvqB,IAAW,QAAXA,IAAW;;AAC/D,4BAA+C+d,0DAAkB,EAAjE;AAAA,MAAQyM,IAAR,uBAAQA,IAAR;AAAA,MAAcrU,OAAd,uBAAcA,OAAd;AAAA,MAAuB7lB,OAAvB,uBAAuBA,OAAvB;AAAA,MAAgCm6B,UAAhC,uBAAgCA,UAAhC;;AACA,MAAMryB,OAAO,GAAGnlB,kDAAW,CAAC,YAAY;AACvC;AACAkjC,IAAAA,OAAO,CAAC7lB,OAAO,KAAK0P,IAAI,CAAChiB,EAAjB,GAAsB,MAAtB,GAA+BwsC,IAAI,KAAK,MAAT,GAAkB,MAAlB,GAA2B,QAA3D,CAAP;AACAC,IAAAA,UAAU,CAACzqB,IAAI,CAAChiB,EAAN,CAAV;AACA,GAJ0B,EAIxB,CAACsS,OAAD,EAAUk6B,IAAV,EAAgBC,UAAhB,EAA4BtU,OAA5B,EAAqCnW,IAAI,CAAChiB,EAA1C,CAJwB,CAA3B;;AAKA,MAAI,OAAOgiB,IAAI,CAACuhB,MAAZ,KAAuB,QAA3B,EAAqC;AACpC,wBACC,2DAAC,qEAAD;AAAS,WAAK,EAAEvhB,IAAI,CAAC3hB,KAArB;AAA4B,eAAS,EAAC;AAAtC,oBACC,2DAAC,wEAAD;AACC,UAAI,EAAE2hB,IAAI,CAACuhB,MADZ;AAEC,eAAS,EAAEjxB,OAAO,KAAK0P,IAAI,CAAChiB,EAAjB,GAAsB,SAAtB,GAAkC,MAF9C;AAGC,aAAO,EAAEoa,OAHV;AAIC,UAAI,EAAC;AAJN,MADD,CADD;AAUA;;AACD,sBAAO,2DAAC,IAAD,CAAM,MAAN;AAAa,QAAI,EAAEoyB,IAAnB;AAAyB,WAAO,EAAErU;AAAlC,IAAP;AACA,CApBD;;AAsBO,IAAM0I,eAAmB,GAAG,SAAtBA,eAAsB,GAAM;AAAA;;AACxC,MAAMt/B,KAAK,GAAG+qC,uDAAe,EAA7B;;AACA,wBAAYzlC,8DAAc,EAA1B;AAAA;AAAA,MAAOhM,CAAP;;AACA,MAAMqY,OAAO,GAAG3c,8DAAc,EAA9B;AACA,MAAMm2C,YAAY,GAAGlxC,8CAAO,CAC3B;AAAA;;AAAA,WACC,CACC;AACCwE,MAAAA,EAAE,EAAE,SADL;AAECK,MAAAA,KAAK,0BAAE6S,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEC,WAAX,uEAA0B,SAFhC;AAGC7I,MAAAA,QAAQ,EAAE;AAHX,KADD,EAMC;AACCtK,MAAAA,EAAE,EAAE,OADL;AAECK,MAAAA,KAAK,mBAAE6S,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEtY,IAAX,yDAAmB,EAFzB;AAGC0P,MAAAA,QAAQ,EAAE,IAHX;AAICqiC,MAAAA,YAAY,EAAE;AAJf,KAND,EAYC;AACC54B,MAAAA,IAAI,EAAE,SADP;AAEC/T,MAAAA,EAAE,EAAE,SAFL;AAGCK,MAAAA,KAAK,EAAE;AAHR,KAZD,EAiBC;AACCL,MAAAA,EAAE,EAAE,UADL;AAECK,MAAAA,KAAK,EAAExF,CAAC,CAAC,gBAAD,EAAmB,UAAnB,CAFT;AAGCulB,MAAAA,KAAK,EAAE;AAAA,eACNvmB,wDAAQ,CAAC+F,gDAAD,CAAR,CAAuB;AACtB0P,UAAAA,GAAG,EAAE,UADiB;AAEtBC,UAAAA,KAAK,EAAE1U,CAAC,CAAC,gBAAD,EAAmB,UAAnB,CAFc;AAGtB8F,UAAAA,IAAI,EAAE;AAHgB,SAAvB,CADM;AAAA,OAHR;AASCA,MAAAA,IAAI,EAAE;AATP,KAjBD,EA4BC;AACCX,MAAAA,EAAE,EAAE,QADL;AAECK,MAAAA,KAAK,EAAExF,CAAC,CAAC,mBAAD,EAAsB,aAAtB,CAFT;AAGCulB,MAAAA,KAAK,EAAE;AAAA,eAAY/L,oDAAI,EAAhB;AAAA,OAHR;AAIC1T,MAAAA,IAAI,EAAE;AAJP,KA5BD,EAkCC;AACCX,MAAAA,EAAE,EAAE,MADL;AAECK,MAAAA,KAAK,EAAExF,CAAC,CAAC,qBAAD,EAAwB,eAAxB,CAFT;AAGC;AACA;AACAulB,MAAAA,KAAK,EAAE,iBAAY,CAAE,CALtB;AAMC9V,MAAAA,QAAQ,EAAE,IANX;AAOC3J,MAAAA,IAAI,EAAE;AAPP,KAlCD,EA2CC;AACCX,MAAAA,EAAE,EAAE,QADL;AAECK,MAAAA,KAAK,EAAExF,CAAC,CAAC,cAAD,EAAiB,QAAjB,CAFT;AAGCulB,MAAAA,KAAK,EAAEjI,mDAHR;AAICxX,MAAAA,IAAI,EAAE;AAJP,KA3CD,CADD;AAAA,GAD2B,EAoD3B,CAACuS,OAAD,EAAUrY,CAAV,CApD2B,CAA5B;AAsDA,sBACC,2DAAC,uEAAD;AAAW,eAAW,EAAC,YAAvB;AAAoC,SAAK,EAAC;AAA1C,KACEa,2CAAG,CAAC6F,KAAD,EAAQ,UAACygB,IAAD;AAAA,wBACX,2DAAC,cAAD;AAAgB,UAAI,EAAEA,IAAtB;AAA4B,SAAG,EAAEA,IAAI,CAAChiB;AAAtC,MADW;AAAA,GAAR,CADL,eAIC,2DAAC,qEAAD;AAAS,SAAK,2BAAEkT,OAAF,aAAEA,OAAF,uBAAEA,OAAO,CAAEC,WAAX,yEAA0BD,OAA1B,aAA0BA,OAA1B,uBAA0BA,OAAO,CAAEtY,IAAjD;AAAuD,aAAS,EAAC;AAAjE,kBACC,2DAAC,sEAAD;AAAU,SAAK,EAAE8xC,YAAjB;AAA+B,YAAQ,EAAC,OAAxC;AAAgD,oBAAgB;AAAhE,kBACC,2DAAC,wEAAD;AAAY,QAAI,EAAC,eAAjB;AAAiC,QAAI,EAAC,OAAtC;AAA8C,WAAO,EAAE9zB,wCAAIA;AAA3D,IADD,CADD,CAJD,CADD;AAYA,CAtEM;;;;;;;;;;;;;;;;;;;;AC7CP;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;ACNA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,IAAMg0B,KAAK,GAAGzxB,6DAAM,CAACJ,sEAAD,CAAT;AAAA;AAAA;AAAA,4IACD;AAAA,MAAGyxB,IAAH,QAAGA,IAAH;AAAA,SAAuBA,IAAI,KAAK,QAAT,GAAoB,GAApB,GAA0B,EAAjD;AAAA,CADC,EASe;AAAA,MAAGhjC,KAAH,SAAGA,KAAH;AAAA,SAAuBA,KAAK,CAACQ,OAAN,CAAckS,KAAd,CAAoBhS,OAA3C;AAAA,CATf,CAAX;AAWA,IAAM2iC,MAAM,GAAG1xB,wEAAH;AAAA;AAAA;AAAA,0EAEF;AAAA,MAAGqxB,IAAH,SAAGA,IAAH;AAAA,SAAuBA,IAAI,KAAK,MAAT,GAAkB,GAAlB,GAAwB,EAA/C;AAAA,CAFE,CAAZ;AAOO,IAAM1L,iBAAqB,GAAG,SAAxBA,iBAAwB,GAAM;AAC1C,4BAA+Cf,0DAAkB,EAAjE;AAAA,MAAQyM,IAAR,uBAAQA,IAAR;AAAA,MAAcrU,OAAd,uBAAcA,OAAd;AAAA,MAAuB7lB,OAAvB,uBAAuBA,OAAvB;AAAA,MAAgCm6B,UAAhC,uBAAgCA,UAAhC;;AACA,MAAMlrC,KAAK,GAAG+qC,uDAAe,EAA7B;AACA,MAAMQ,YAAY,GAAGtxC,8CAAO,CAAC;AAAA,WAAMgU,4CAAI,CAACjO,KAAD,EAAQ,UAACygB,IAAD;AAAA,aAAUA,IAAI,CAAChiB,EAAL,KAAYsS,OAAtB;AAAA,KAAR,CAAV;AAAA,GAAD,EAAmD,CAACA,OAAD,EAAU/Q,KAAV,CAAnD,CAA5B;AACA4E,EAAAA,gDAAS,CAAC,YAAM;AACf,QAAI,EAAEmM,OAAO,IAAIw6B,YAAb,CAAJ,EAAgC;AAAA;;AAC/BL,MAAAA,UAAU,YAAClrC,KAAK,CAAC,CAAD,CAAN,4CAAC,QAAUvB,EAAX,CAAV;AACA;AACD,GAJQ,EAIN,CAACsS,OAAD,EAAUw6B,YAAV,EAAwBL,UAAxB,EAAoClrC,KAApC,CAJM,CAAT;AAKA,SAAOurC,YAAY,gBAClB,2DAAC,uEAAD;AAAY,QAAI,EAAC;AAAjB,kBACC,2DAAC,MAAD;AAAQ,QAAI,EAAEN;AAAd,kBACC,2DAAC,KAAD;AAAO,QAAI,EAAEA,IAAb;AAAmB,iBAAa,EAAC;AAAjC,KACEM,YAAY,iBACZ,2DAAC,sEAAD;AAAoB,OAAG,EAAEA,YAAF,aAAEA,YAAF,uBAAEA,YAAY,CAAE9sC;AAAvC,kBACC,2DAAC,YAAD,CAAc,SAAd;AAAwB,QAAI,EAAEwsC,IAA9B;AAAoC,WAAO,EAAErU;AAA7C,IADD,CAFF,CADD,CADD,CADkB,GAYf,IAZJ;AAaA,CAtBM;;;;;;;;;;;;;;;;AC/BP;AACA;AACA;AACA;AACA;AACA;AAGO,IAAM4H,kBAAkB,GAAGzgB,mDAAM,CAAkB,UAAC7F,GAAD;AAAA,SAAU;AACnE+yB,IAAAA,IAAI,EAAE,QAD6D;AAEnEl6B,IAAAA,OAAO,EAAEwB,SAF0D;AAGnEssB,IAAAA,iBAAiB,EAAE,IAHgD;AAInEjI,IAAAA,OAAO,EAAE,iBAACqU,IAAD;AAAA,aACR/yB,GAAG,CAAC,UAACzd,CAAD;AAAA,eAAQ;AAAEwwC,UAAAA,IAAI,EAAJA,IAAF;AAAQpM,UAAAA,iBAAiB,EAAEoM,IAAI,KAAK,MAAT,GAAkB,KAAlB,GAA0BxwC,CAAC,CAACokC;AAAvD,SAAR;AAAA,OAAD,CADK;AAAA,KAJ0D;AAMnEqM,IAAAA,UAAU,EAAE,oBAACn6B,OAAD;AAAA,aAAmBmH,GAAG,CAAC;AAAEnH,QAAAA,OAAO,EAAPA;AAAF,OAAD,CAAtB;AAAA,KANuD;AAOnEguB,IAAAA,oBAAoB,EAAE,8BAACF,iBAAD;AAAA,aAAsC3mB,GAAG,CAAC;AAAE2mB,QAAAA,iBAAiB,EAAjBA;AAAF,OAAD,CAAzC;AAAA;AAP6C,GAAV;AAAA,CAAlB,CAAjC;;;;;;;;;;;;;;;;;;;;;;;;;;;ACRP;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AACA;AAEO,IAAM4M,SAAS,GAAG,SAAZA,SAAY,CAACC,EAAD,EAAoBC,EAApB;AAAA,SACxBH,oDAAY,CAACE,EAAD,EAAKC,EAAL,CAAZ,CAAqBjwB,MAArB,GAA8B,CADN;AAAA,CAAlB;AAGA,IAAMiiB,UAAU,GAAG,SAAbA,UAAa,CACzBld,IADyB,EAEzBxB,WAFyB,EAGZ;AAAA;;AACb,MAAM2sB,iBAAiB,GAAG7kC,MAAM,CAACC,MAAP,UAAci6B,4CAAI,CAAChiB,WAAD,EAAc,YAAd,CAAlB,yCAAiD,EAAjD,CAA1B;AACA,MAAIwB,IAAI,CAACshB,eAAT,EAA0B,OAAO,CAAC0J,SAAS,CAACG,iBAAD,EAAoBnrB,IAAI,CAACshB,eAAzB,CAAjB;AAC1B,MAAIthB,IAAI,CAACqhB,eAAT,EAA0B,OAAO2J,SAAS,CAACG,iBAAD,EAAoBnrB,IAAI,CAACqhB,eAAzB,CAAhB;AAC1B,SAAO,IAAP;AACA,CARM;AASA,IAAMiJ,eAAe,GAAG,SAAlBA,eAAkB,GAA0B;AACxD,MAAMc,YAAY,GAAGzxC,uDAAW,CAAC,UAACK,CAAD;AAAA,WAAOA,CAAC,CAACuF,KAAF,CAAQwhC,UAAf;AAAA,GAAD,CAAhC;AAEA,MAAMviB,WAAW,GAAG5oB,+DAAe,EAAnC;AACA,SAAO4D,8CAAO,CACb;AAAA,WAAM4I,8CAAM,CAACgpC,YAAD,EAAe,UAAC/oB,CAAD;AAAA,aAAO6a,UAAU,CAAC7a,CAAD,EAAI7D,WAAJ,CAAjB;AAAA,KAAf,CAAZ;AAAA,GADa,EAEb,CAACA,WAAD,EAAc4sB,YAAd,CAFa,CAAd;AAIA,CARM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACxBP;AACA;AACA;AACA;AACA;AAEA;AACA;AACO,IAAMnC,SAAS,GAAG,IAAIoC,MAAJ,CAAW,IAAIC,GAAJ,CAAQ,8GAAR,CAAX,CAAlB,EACP;AACA;;AACO,IAAMpI,YAAY,GAAG,IAAImI,MAAJ,CAAW,IAAIC,GAAJ,CAAQ,iHAAR,CAAX,CAArB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACXP;AACA;AACA;AACA;AACA;;AACA;AA0CO,IAAMtyC,mBAAN;AAKA,IAAMiE,YAAN;AACA,IAAMsM,sBAAN;AACA,IAAMI,OAAN;AAGA,IAAM/L,YAAY,GAAG,mBAArB;AACA,IAAMD,eAAe,GAAG,UAAxB;AACA,IAAMD,aAAa,GAAG,QAAtB;AACA,IAAMmN,YAAN;AAGA,IAAM4gC,WAAN;AACA,IAAMzmC,QAAN;AAEA,IAAMC,aAAN;AAEA,IAAM/Q,iBAAN;AACA,IAAMD,qBAAN;AACA,IAAMD,sBAAN;AACA,IAAMH,UAAN;AACA,IAAMC,iBAAN;AACA,IAAMF,SAAN;AACA,IAAMG,gBAAN;AAIA,IAAMwB,iBAAN;AACA,IAAMD,qBAAN;AACA,IAAMD,sBAAN;AACA,IAAMH,UAAN;AACA,IAAMC,iBAAN;AACA,IAAMF,SAAN;AACA,IAAMG,gBAAN;AAIA,IAAM3B,MAAN;AACA,IAAMF,MAAN;AACA,IAAMG,aAAN;AACA,IAAMF,aAAN;AACA,IAAMe,cAAN;AACA,IAAMC,eAAN;AACA,IAAMI,aAAN;AACA,IAAMD,YAAN;AACA,IAAMR,cAAN;AACA,IAAMC,eAAN;AACA,IAAMU,aAAN;AACA,IAAMD,YAAN;AACA,IAAMsC,OAAN;AACA,IAAMD,OAAN;AACA,IAAMw0C,MAAN;AACA,IAAMC,MAAN;AACA,IAAMv1C,SAAN;AACA,IAAMF,SAAN;AACA,IAAMG,UAAN;AACA,IAAMF,UAAN;AACA,IAAMG,OAAN;AACA,IAAMC,OAAN;AACA,IAAMC,QAAN;AACA,IAAMC,QAAN;AACA,IAAMm1C,aAAN;AACA,IAAMC,aAAN;AACA,IAAMt0C,SAAN;AACA,IAAME,SAAN;AACA,IAAMD,SAAN;AACA,IAAMF,cAAN;AACA,IAAM5C,eAAN;AACA,IAAMD,cAAN;AACA,IAAMH,eAAN;AACA,IAAMD,cAAN;AACA,IAAM+C,SAAN;AACA,IAAMC,UAAN;AACA,IAAM6I,OAAN;AACA,IAAMD,OAAN;AAEA,IAAMlL,WAAN;AACA,IAAM+D,SAAN;AACA,IAAMC,YAAN;AACA,IAAMqH,MAAN;AACA,IAAM/E,aAAN;AAEA,IAAMyB,aAAN;AACA,IAAMD,eAAN;AAGA,IAAMG,gBAAN;AACA,IAAMD,kBAAN;AAGA,IAAML,WAAN;AACA,IAAMD,aAAN;AACA,IAAMG,eAAN;AACA,IAAMD,iBAAN,EACP;;AACO,IAAMrB,QAAN;AACA,IAAME,kBAAN,EACP;;AACO,IAAMG,WAAN,EACP;AACA;;AACO,IAAMR,kBAAN;AACA,IAAMC,kBAAN,EACP;AACA;;AACO,IAAMQ,YAAN,EACP;;AACO,IAAME,eAAN,EACP;AACA;;AACO,IAAMC,eAAN,EACP;;AACO,IAAMC,kBAAN,EACP;AACA;;AACO,IAAMC,aAAN,EACP;;AACO,IAAMC,gBAAN,EACP;AACA;;AACO,IAAMC,cAAN,EACP;;AACO,IAAMC,iBAAN,EACP;AACA;;AACO,IAAMC,uBAAN,EACP;;AACO,IAAMC,0BAAN,EACP;AACA;;AACO,IAAMC,yBAAN,EACP;;AACO,IAAMC,4BAAN;AACA,IAAMhH,sBAAN;AACA,IAAME,yBAAN;AACA,IAAMD,wBAAN;AACA,IAAMM,WAAN;AACA,IAAMF,cAAN;AACA,IAAMC,aAAN;AACA,IAAMF,eAAN;AACA,IAAMD,eAAN,EAEP;AAEA;AAEA;;AACO,IAAMqB,aAAN;AACA,IAAMC,aAAN,EAEP;;AAEO,IAAMP,eAAN;AACA,IAAMC,gBAAN;AACA,IAAMC,eAAN;AACA,IAAMC,gBAAN,EAEP;;AAEO,IAAME,gBAAN;AAEA,IAAMD,yBAAN,EAMP;;AACO,IAAM4B,sBAAN,EAEP;;AACO,IAAMhB,SAAN;AAEA,IAAM1C,eAAN;AAEA,IAAM2C,OAAN;AACA,IAAM/E,OAAN;AACA,IAAMiG,CAAN;AAEA,IAAMhB,QAAN;AAIA,IAAMC,UAAN;AACA,IAAMC,WAAN;AACA,IAAMC,kBAAN;AACA,IAAMC,YAAN;AACA,IAAMC,mBAAN;AACA,IAAMC,mBAAN;AACA,IAAMC,YAAN;AACA,IAAME,cAAN;AACA,IAAMC,YAAN;AACA,IAAMC,eAAN;AACA,IAAMC,aAAN;AACA,IAAMJ,QAAN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrPP;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClBA;AACA;AACA;AACA;AACA;AAOA;AACO,IAAKyzC,IAAZ;;WAAYA;AAAAA,EAAAA;AAAAA,EAAAA;AAAAA,EAAAA;AAAAA,EAAAA;AAAAA,EAAAA;GAAAA,SAAAA;;;;;;;;;;;;;ACZZ;AACA;AACA;AACA;AACA;AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACTA;AACA;AACA;AACA;AACA;AAIA;AAWO,IAAK/sB,eAAZ,EAMA;AACA;AACA;AACA;AACA;AACA;;WAXYA;AAAAA,EAAAA;AAAAA,EAAAA;AAAAA,EAAAA;GAAAA,oBAAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACnBZ,iEAAe,qBAAuB,yCAAyC;;;;;;;;;;;;;;;ACA/E,iEAAe,qBAAuB,yCAAyC;;;;;;;;;;ACA/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;ACnSA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA;;;;;;;;;;ACAA","sources":["webpack://@zextras/carbonio-shell-ui/./src/boot/app/app-context-provider.tsx","webpack://@zextras/carbonio-shell-ui/./src/boot/app/app-error-catcher.tsx","webpack://@zextras/carbonio-shell-ui/./src/boot/app/app-loader-functions.ts","webpack://@zextras/carbonio-shell-ui/./src/boot/app/app-loader-mounter.tsx","webpack://@zextras/carbonio-shell-ui/./src/boot/app/app-loader-setters.ts","webpack://@zextras/carbonio-shell-ui/./src/boot/app/default-views.ts","webpack://@zextras/carbonio-shell-ui/./src/boot/app/load-app.ts","webpack://@zextras/carbonio-shell-ui/./src/boot/app/load-apps.ts","webpack://@zextras/carbonio-shell-ui/./src/boot/app/shared-libraries.ts","webpack://@zextras/carbonio-shell-ui/./src/boot/bootstrapper-provider.tsx","webpack://@zextras/carbonio-shell-ui/./src/boot/bootstrapper-router.tsx","webpack://@zextras/carbonio-shell-ui/./src/boot/bootstrapper.tsx","webpack://@zextras/carbonio-shell-ui/./src/boot/init.ts","webpack://@zextras/carbonio-shell-ui/./src/boot/theme-provider.tsx","webpack://@zextras/carbonio-shell-ui/./src/constants/index.ts","webpack://@zextras/carbonio-shell-ui/./src/dev/dev-board-trigger.tsx","webpack://@zextras/carbonio-shell-ui/./src/dev/dev-board.tsx","webpack://@zextras/carbonio-shell-ui/./src/history/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/network/edit-settings.ts","webpack://@zextras/carbonio-shell-ui/./src/network/fetch.ts","webpack://@zextras/carbonio-shell-ui/./src/network/get-info.ts","webpack://@zextras/carbonio-shell-ui/./src/network/go-to-login.ts","webpack://@zextras/carbonio-shell-ui/./src/network/logout.ts","webpack://@zextras/carbonio-shell-ui/./src/network/tags.ts","webpack://@zextras/carbonio-shell-ui/./src/network/user-agent.ts","webpack://@zextras/carbonio-shell-ui/./src/notification/NotificationManager.ts","webpack://@zextras/carbonio-shell-ui/./src/notification/NotificationPermissionChecker.tsx","webpack://@zextras/carbonio-shell-ui/./src/reporting/feedback.tsx","webpack://@zextras/carbonio-shell-ui/./src/reporting/functions.ts","webpack://@zextras/carbonio-shell-ui/./src/reporting/index.ts","webpack://@zextras/carbonio-shell-ui/./src/reporting/store.ts","webpack://@zextras/carbonio-shell-ui/./src/search/module-selector.tsx","webpack://@zextras/carbonio-shell-ui/./src/search/run-search.ts","webpack://@zextras/carbonio-shell-ui/./src/search/search-app-view.tsx","webpack://@zextras/carbonio-shell-ui/./src/search/search-bar.tsx","webpack://@zextras/carbonio-shell-ui/./src/search/search-store.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/account-wrapper.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/accounts-settings.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/account-settings/accounts-list.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/account-settings/delegates.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/account-settings/persona-settings.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/account-settings/persona-use-section.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/account-settings/primary-account-settings.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/account-settings/settings-sent-messages.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/date-picker-style.jsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/date-time-select-view.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/general-settings/appearance-settings.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/general-settings/logout.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/general-settings/module-version-settings.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/general-settings/out-of-office-view.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/general-settings/user-quota.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/settings-header.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/settings-heading.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/components/utils.ts","webpack://@zextras/carbonio-shell-ui/./src/settings/general-settings-sub-sections.ts","webpack://@zextras/carbonio-shell-ui/./src/settings/general-settings.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/language-and-timezone-settings.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/search-settings-view.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/settings-app-view.tsx","webpack://@zextras/carbonio-shell-ui/./src/settings/settings-sidebar.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/app-view-container.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/badge-wrap.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/boards/board-container.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/boards/board-tab-list.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/boards/board-tab.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/boards/board.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/collapser.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/creation-button.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-context-provider.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-context.ts","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-header.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-mobile-nav.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-navigation-bar.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-primary-bar.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-secondary-bar.tsx","webpack://@zextras/carbonio-shell-ui/./src/shell/shell-view.tsx","webpack://@zextras/carbonio-shell-ui/./src/store/account/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/store/account/index.ts","webpack://@zextras/carbonio-shell-ui/./src/store/account/normalization.ts","webpack://@zextras/carbonio-shell-ui/./src/store/account/store.ts","webpack://@zextras/carbonio-shell-ui/./src/store/app/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/store/app/index.ts","webpack://@zextras/carbonio-shell-ui/./src/store/app/store.ts","webpack://@zextras/carbonio-shell-ui/./src/store/app/utils.tsx","webpack://@zextras/carbonio-shell-ui/./src/store/boards/hooks.tsx","webpack://@zextras/carbonio-shell-ui/./src/store/boards/index.ts","webpack://@zextras/carbonio-shell-ui/./src/store/boards/store.ts","webpack://@zextras/carbonio-shell-ui/./src/store/context-bridge.ts","webpack://@zextras/carbonio-shell-ui/./src/store/folder/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/store/folder/index.ts","webpack://@zextras/carbonio-shell-ui/./src/store/folder/store.ts","webpack://@zextras/carbonio-shell-ui/./src/store/folder/utils.ts","webpack://@zextras/carbonio-shell-ui/./src/store/i18n/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/store/i18n/index.ts","webpack://@zextras/carbonio-shell-ui/./src/store/i18n/store.ts","webpack://@zextras/carbonio-shell-ui/./src/store/integrations/composer.tsx","webpack://@zextras/carbonio-shell-ui/./src/store/integrations/getters.tsx","webpack://@zextras/carbonio-shell-ui/./src/store/integrations/hooks.tsx","webpack://@zextras/carbonio-shell-ui/./src/store/integrations/store.ts","webpack://@zextras/carbonio-shell-ui/./src/store/network/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/store/network/index.ts","webpack://@zextras/carbonio-shell-ui/./src/store/network/store.ts","webpack://@zextras/carbonio-shell-ui/./src/store/network/utils.ts","webpack://@zextras/carbonio-shell-ui/./src/store/tags/hooks.ts","webpack://@zextras/carbonio-shell-ui/./src/store/tags/index.ts","webpack://@zextras/carbonio-shell-ui/./src/store/tags/store.ts","webpack://@zextras/carbonio-shell-ui/./src/ui-extras/app-link.tsx","webpack://@zextras/carbonio-shell-ui/./src/ui-extras/nav-guard.tsx","webpack://@zextras/carbonio-shell-ui/./src/ui-extras/spinner.tsx","webpack://@zextras/carbonio-shell-ui/./src/utility-bar/bar.tsx","webpack://@zextras/carbonio-shell-ui/./src/utility-bar/index.ts","webpack://@zextras/carbonio-shell-ui/./src/utility-bar/panel.tsx","webpack://@zextras/carbonio-shell-ui/./src/utility-bar/store.ts","webpack://@zextras/carbonio-shell-ui/./src/utility-bar/utils.ts","webpack://@zextras/carbonio-shell-ui/./src/workers/index.ts","webpack://@zextras/carbonio-shell-ui/./types/exports/index.d.ts","webpack://@zextras/carbonio-shell-ui/./types/index.d.ts","webpack://@zextras/carbonio-shell-ui/./types/misc/index.d.ts","webpack://@zextras/carbonio-shell-ui/./types/network/index.d.ts","webpack://@zextras/carbonio-shell-ui/./types/search/index.d.ts","webpack://@zextras/carbonio-shell-ui/./assets/carbonio-logo.png","webpack://@zextras/carbonio-shell-ui/./assets/notification.mp3","webpack://@zextras/carbonio-shell-ui//tmp/workspace/extras_carbonio-shell-ui_release/node_modules/moment/locale|sync|/^\\.\\/.*$/","webpack://@zextras/carbonio-shell-ui/ignored|/tmp/workspace/extras_carbonio-shell-ui_release/node_modules/react-pdf/node_modules/pdfjs-dist/legacy/build|canvas","webpack://@zextras/carbonio-shell-ui/ignored|/tmp/workspace/extras_carbonio-shell-ui_release/node_modules/react-pdf/node_modules/pdfjs-dist/legacy/build|fs","webpack://@zextras/carbonio-shell-ui/ignored|/tmp/workspace/extras_carbonio-shell-ui_release/node_modules/react-pdf/node_modules/pdfjs-dist/legacy/build|http","webpack://@zextras/carbonio-shell-ui/ignored|/tmp/workspace/extras_carbonio-shell-ui_release/node_modules/react-pdf/node_modules/pdfjs-dist/legacy/build|https","webpack://@zextras/carbonio-shell-ui/ignored|/tmp/workspace/extras_carbonio-shell-ui_release/node_modules/react-pdf/node_modules/pdfjs-dist/legacy/build|url","webpack://@zextras/carbonio-shell-ui/ignored|/tmp/workspace/extras_carbonio-shell-ui_release/node_modules/react-pdf/node_modules/pdfjs-dist/legacy/build|zlib"],"sourcesContent":["/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC } from 'react';\nimport { I18nextProvider } from 'react-i18next';\nimport AppErrorCatcher from './app-error-catcher';\nimport { useI18n } from '../../store/i18n';\n\nconst AppContextProvider: FC<{ pkg: string }> = ({ pkg, children }) => {\n\tconst i18n = useI18n(pkg)();\n\treturn (\n\t\t<I18nextProvider i18n={i18n}>\n\t\t\t<AppErrorCatcher>{children}</AppErrorCatcher>\n\t\t</I18nextProvider>\n\t);\n};\n\nexport default AppContextProvider;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useCallback } from 'react';\nimport { Catcher } from '@zextras/carbonio-design-system';\n\nconst AppErrorCatcher: FC = ({ children }) => {\n\tconst onError = useCallback((error) => {\n\t\tconsole.error(error);\n\t\t// ({event: 'report-exception',data: { exception: error }});\n\t}, []);\n\treturn <Catcher onError={onError}>{children}</Catcher>;\n};\nexport default AppErrorCatcher;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n// The 'useXXX' functions actually return hooks\n/* eslint-disable react-hooks/rules-of-hooks */\n\nimport { reduce } from 'lodash';\nimport { getApp, getAppContext, useApp, useAppContext } from '../../store/app';\nimport { useContextBridge } from '../../store/context-bridge';\nimport {\n\tgetAction,\n\tgetActions,\n\tgetActionsFactory,\n\tgetActionFactory,\n\tgetIntegratedComponent,\n\tgetIntegratedFunction,\n\tgetIntegratedHook\n} from '../../store/integrations/getters';\nimport {\n\tgetUserAccount,\n\tgetUserAccounts,\n\tgetUserSetting,\n\tgetUserSettings,\n\tuseUserAccount,\n\tuseUserAccounts,\n\tuseUserSetting,\n\tuseUserSettings,\n\tuseUserRight,\n\tuseUserRights,\n\tgetUserRight,\n\tgetUserRights\n} from '../../store/account';\nimport { useIsMobile, useLocalStorage } from '../../shell/hooks';\nimport {\n\tuseAction,\n\tuseActions,\n\tuseActionsFactory,\n\tuseActionFactory,\n\tuseIntegratedComponent,\n\tuseIntegratedFunction,\n\tuseIntegratedHook\n} from '../../store/integrations/hooks';\nimport { CarbonioModule } from '../../../types';\nimport {\n\tusePushHistoryCallback,\n\tuseGoBackHistoryCallback,\n\tuseReplaceHistoryCallback,\n\tgetCurrentRoute,\n\tuseCurrentRoute,\n\treplaceHistory,\n\tgoBackHistory,\n\tpushHistory\n} from '../../history/hooks';\nimport { getSoapFetch, getXmlSoapFetch } from '../../network/fetch';\nimport {\n\tgetFolder,\n\tgetFolders,\n\tuseFolder,\n\tuseFolders,\n\tuseRoot,\n\tgetRoot,\n\tuseRoots,\n\tgetRoots,\n\tuseSearchFolder,\n\tuseSearchFolders,\n\tgetSearchFolder,\n\tgetSearchFolders,\n\tuseFoldersAccordionByView,\n\tuseFoldersByView,\n\tuseRootByUser,\n\tgetRootByUser\n} from '../../store/folder';\nimport { getTags, useTags } from '../../store/tags';\nimport { useNotify, useRefresh } from '../../store/network';\nimport { changeTagColor, createTag, deleteTag, renameTag } from '../../network/tags';\nimport { runSearch } from '../../search/run-search';\nimport { getI18n, useI18n, getTFunction } from '../../store/i18n';\nimport {\n\taddBoard,\n\tcloseBoard,\n\tupdateBoard,\n\tupdateBoardContext,\n\tgetBoardById,\n\tgetBoardContextById,\n\tuseBoardContextById,\n\tuseBoardById,\n\tuseBoard,\n\tminimizeBoards,\n\treopenBoards,\n\tsetCurrentBoard,\n\tuseBoardHooks\n} from '../../store/boards';\nimport { getNotificationManager } from '../../notification/NotificationManager';\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const getAppFunctions = (pkg: CarbonioModule): Record<string, Function> => ({\n\t// I18N\n\tuseI18n: useI18n(pkg.name),\n\tgetI18n: getI18n(pkg.name),\n\tt: getTFunction(pkg.name),\n\t// FETCH\n\tsoapFetch: getSoapFetch(pkg.name),\n\txmlSoapFetch: getXmlSoapFetch(pkg.name),\n\n\t// APP STORE FUNCTIONS\n\tuseAppContext: useAppContext(pkg.name),\n\tgetAppContext: getAppContext(pkg.name),\n\tuseApp: useApp(pkg.name),\n\tgetApp: getApp(pkg.name),\n\n\t// INTEGRATIONS\n\tuseIntegratedHook,\n\tgetIntegratedHook,\n\tuseIntegratedFunction,\n\tgetIntegratedFunction,\n\tuseIntegratedComponent,\n\tgetIntegratedComponent,\n\tuseAction,\n\tgetAction,\n\tuseActions,\n\tgetActions,\n\tuseActionsFactory,\n\tgetActionsFactory,\n\tuseActionFactory,\n\tgetActionFactory,\n\t// ACCOUNTS\n\tuseUserAccount,\n\tgetUserAccount,\n\tuseUserAccounts,\n\tgetUserAccounts,\n\tuseUserSettings,\n\tgetUserSettings,\n\tgetUserSetting,\n\tuseUserSetting,\n\tuseUserRight,\n\tuseUserRights,\n\tgetUserRight,\n\tgetUserRights,\n\tuseTags,\n\tgetTags,\n\tuseNotify,\n\tuseRefresh,\n\t// FOLDERS\n\tuseFoldersAccordionByView,\n\tuseFoldersByView,\n\tuseFolder,\n\tgetFolder,\n\tuseFolders,\n\tgetFolders,\n\tuseRoot,\n\tgetRoot,\n\tuseRoots,\n\tgetRoots,\n\tuseSearchFolder,\n\tuseSearchFolders,\n\tgetSearchFolder,\n\tgetSearchFolders,\n\tuseRootByUser,\n\tgetRootByUser,\n\t// BOARDS\n\taddBoard: addBoard(pkg.name),\n\tcloseBoard,\n\tupdateBoard,\n\tupdateBoardContext,\n\tgetBoardById,\n\tgetBoardContextById,\n\tuseBoard,\n\tuseBoardById,\n\tuseBoardContextById,\n\tminimizeBoards,\n\treopenBoards,\n\tsetCurrentBoard,\n\tuseBoardHooks,\n\t// HISTORY\n\tusePushHistoryCallback,\n\tuseGoBackHistoryCallback,\n\tuseReplaceHistoryCallback,\n\tuseCurrentRoute,\n\tgetCurrentRoute,\n\tpushHistory,\n\tgoBackHistory,\n\treplaceHistory,\n\t// TAGS\n\tcreateTag,\n\trenameTag,\n\tchangeTagColor,\n\tdeleteTag,\n\t// NOTIFICATION\n\tgetNotificationManager,\n\n\t// STUFF\n\trunSearch,\n\tuseIsMobile,\n\tuseLocalStorage,\n\tgetBridgedFunctions: (): unknown => {\n\t\tconst { packageDependentFunctions, functions } = useContextBridge.getState();\n\t\treturn {\n\t\t\t...functions,\n\t\t\t...reduce(packageDependentFunctions, (acc, f, name) => ({ ...acc, [name]: f(pkg.name) }), {})\n\t\t};\n\t}\n});\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, memo, Suspense, useMemo } from 'react';\nimport { isEmpty, map } from 'lodash';\nimport { useAppStore } from '../../store/app';\nimport AppContextProvider from './app-context-provider';\n\nconst Mounter: FC<{ appId: string }> = ({ children, appId }) => (\n\t<div key={appId} id={appId}>\n\t\t<AppContextProvider key={appId} pkg={appId}>\n\t\t\t<Suspense fallback={''}>{children}</Suspense>\n\t\t</AppContextProvider>\n\t</div>\n);\n\nconst AppLoaderMounter: FC = () => {\n\tconst entryPoints = useAppStore((s) => s.entryPoints);\n\tconst entries = useMemo(\n\t\t() =>\n\t\t\tisEmpty(entryPoints)\n\t\t\t\t? null\n\t\t\t\t: map(entryPoints, (Comp, appId) => {\n\t\t\t\t\t\tconst MemoComp = memo(Comp);\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<Mounter key={appId} appId={appId}>\n\t\t\t\t\t\t\t\t<MemoComp />\n\t\t\t\t\t\t\t</Mounter>\n\t\t\t\t\t\t);\n\t\t\t\t }),\n\t\t[entryPoints]\n\t);\n\n\treturn (\n\t\t<div\n\t\t\tdata-testid=\"app-mounter\"\n\t\t\tkey=\"app-mounter\"\n\t\t\thidden\n\t\t\tstyle={{ height: 0, overflow: 'hidden' }}\n\t\t>\n\t\t\t{entries}\n\t\t</div>\n\t);\n};\n\nexport default AppLoaderMounter;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n// The 'useXXX' functions actually return hooks\n/* eslint-disable react-hooks/rules-of-hooks */\n\nimport {\n\tAppRouteDescriptor,\n\tBoardView,\n\tCarbonioModule,\n\tPrimaryAccessoryView,\n\tSearchView,\n\tSecondaryAccessoryView,\n\tSettingsView,\n\tUtilityView\n} from '../../../types';\nimport { getEditSettingsForApp } from '../../network/edit-settings';\nimport { useAppStore } from '../../store/app';\nimport {\n\tnormalizeRoute,\n\tnormalizeSettingsView,\n\tnormalizeSearchView,\n\tnormalizeUtilityView,\n\tnormalizePrimaryAccessoryView,\n\tnormalizeSecondaryAccessoryView,\n\tnormalizeBoardView\n} from '../../store/app/utils';\nimport { useIntegrationsStore } from '../../store/integrations/store';\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const getAppSetters = (pkg: CarbonioModule): Record<string, Function> => {\n\tconst appSetters = useAppStore.getState().setters;\n\tconst integrations = useIntegrationsStore.getState();\n\treturn {\n\t\tupdatePrimaryBadge: appSetters.updatePrimaryBadge,\n\t\tupdateUtilityBadge: appSetters.updateUtilityBadge,\n\t\tsetAppContext: appSetters.setAppContext(pkg.name),\n\t\taddRoute: (route: Partial<AppRouteDescriptor>) =>\n\t\t\tappSetters.addRoute(normalizeRoute(route, pkg)),\n\t\tsetRouteVisibility: (routeId: string, visible: boolean) =>\n\t\t\tappSetters.setRouteVisibility(routeId, visible),\n\t\tremoveRoute: (routeId: string) => appSetters.removeRoute(routeId),\n\t\t// add board\n\t\taddBoardView: (data: Partial<BoardView>) =>\n\t\t\tappSetters.addBoardView(normalizeBoardView(data, pkg)),\n\t\t// remove board\n\t\tremoveBoardView: appSetters.removeBoardView,\n\t\t//\n\t\t// add settings\n\t\taddSettingsView: (data: Partial<SettingsView>) =>\n\t\t\tappSetters.addSettingsView(normalizeSettingsView(data, pkg)),\n\t\t// remove settings\n\t\tremoveSettingsView: appSetters.removeSettingsView,\n\t\t//\n\t\t// add search\n\t\taddSearchView: (data: Partial<SearchView>) =>\n\t\t\tappSetters.addSearchView(normalizeSearchView(data, pkg)),\n\t\t// remove search\n\t\tremoveSearchView: appSetters.removeSearchView,\n\t\t//\n\t\t// add utility\n\t\taddUtilityView: (data: Partial<UtilityView>) =>\n\t\t\tappSetters.addUtilityView(normalizeUtilityView(data, pkg)),\n\t\t// remove utility\n\t\tremoveUtilityView: appSetters.removeUtilityView,\n\t\t//\n\t\t// add primaryAccessory\n\t\taddPrimaryAccessoryView: (data: Partial<PrimaryAccessoryView>) =>\n\t\t\tappSetters.addPrimaryAccessoryView(normalizePrimaryAccessoryView(data, pkg)),\n\t\t// remove primaryAccessory\n\t\tremovePrimaryAccessoryView: appSetters.removePrimaryAccessoryView,\n\t\t//\n\t\t// add secondaryAccessory\n\t\taddSecondaryAccessoryView: (data: Partial<SecondaryAccessoryView>) =>\n\t\t\tappSetters.addSecondaryAccessoryView(normalizeSecondaryAccessoryView(data, pkg)),\n\t\t// remove secondaryAccessory\n\t\tremoveSecondaryAccessoryView: appSetters.removeSecondaryAccessoryView,\n\t\tregisterHooks: integrations.registerHooks,\n\t\tremoveHooks: integrations.removeHooks,\n\t\tregisterFunctions: integrations.registerFunctions,\n\t\tremoveFunctions: integrations.removeFunctions,\n\t\tregisterActions: integrations.registerActions,\n\t\tremoveActions: integrations.removeActions,\n\t\tregisterComponents: integrations.registerComponents(pkg.name),\n\t\tremoveComponents: integrations.removeComponents,\n\t\teditSettings: getEditSettingsForApp(pkg.name)\n\t};\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n/* eslint-disable no-param-reassign */\n\nimport produce from 'immer';\nimport { TFunction } from 'i18next';\nimport { useAppStore } from '../../store/app';\nimport { SearchAppView } from '../../search/search-app-view';\nimport { SettingsAppView } from '../../settings/settings-app-view';\nimport { SettingsSidebar } from '../../settings/settings-sidebar';\nimport { AppState, PrimaryBarView, SettingsView } from '../../../types';\nimport GeneralSettings from '../../settings/general-settings';\nimport Feedback from '../../reporting/feedback';\nimport DevBoard from '../../dev/dev-board';\nimport DevBoardTrigger from '../../dev/dev-board-trigger';\nimport { SEARCH_APP_ID, SETTINGS_APP_ID, SHELL_APP_ID } from '../../constants';\nimport AccountWrapper from '../../settings/account-wrapper';\nimport { settingsSubSections } from '../../settings/general-settings-sub-sections';\n\nconst settingsRoute = {\n\troute: SETTINGS_APP_ID,\n\tid: SETTINGS_APP_ID,\n\tapp: SETTINGS_APP_ID\n};\nconst settingsPrimaryBar = (t: TFunction): PrimaryBarView => ({\n\tid: SETTINGS_APP_ID,\n\tapp: SETTINGS_APP_ID,\n\troute: SETTINGS_APP_ID,\n\tcomponent: 'SettingsModOutline',\n\tposition: 16,\n\tvisible: true,\n\tlabel: t('settings.app', 'Settings'),\n\tbadge: {\n\t\tshow: false\n\t}\n});\nconst settingsSecondaryBar = {\n\tid: SETTINGS_APP_ID,\n\tapp: SETTINGS_APP_ID,\n\troute: SETTINGS_APP_ID,\n\tcomponent: SettingsSidebar\n};\n\nconst settingsAppView = {\n\tid: SETTINGS_APP_ID,\n\tapp: SETTINGS_APP_ID,\n\troute: SETTINGS_APP_ID,\n\tcomponent: SettingsAppView\n};\nconst settingsGeneralView = (t: TFunction): SettingsView => ({\n\tid: 'general',\n\troute: 'general',\n\tapp: SHELL_APP_ID,\n\tcomponent: GeneralSettings,\n\ticon: 'SettingsModOutline',\n\tlabel: t('settings.general.general', 'General'),\n\tposition: 1,\n\tsubSections: settingsSubSections(t)\n});\n\nconst settingsAccountsView = (t: TFunction): SettingsView => ({\n\tid: 'accounts',\n\troute: 'accounts',\n\tapp: SHELL_APP_ID,\n\tcomponent: AccountWrapper,\n\ticon: 'PersonOutline',\n\tlabel: t('settings.accounts', 'Accounts'),\n\tposition: 1\n});\n\nconst searchRoute = {\n\troute: SEARCH_APP_ID,\n\tid: SEARCH_APP_ID,\n\tapp: SEARCH_APP_ID\n};\nconst searchPrimaryBar = (t: TFunction): PrimaryBarView => ({\n\tid: SEARCH_APP_ID,\n\tapp: SEARCH_APP_ID,\n\troute: SEARCH_APP_ID,\n\tcomponent: 'SearchModOutline',\n\tposition: 15,\n\tvisible: true,\n\tlabel: t('search.app', 'Search'),\n\tbadge: {\n\t\tshow: false\n\t}\n});\nconst searchAppView = {\n\tid: SEARCH_APP_ID,\n\tapp: SEARCH_APP_ID,\n\troute: SEARCH_APP_ID,\n\tcomponent: SearchAppView\n};\n\nconst feedbackBoardView = {\n\tid: 'feedback',\n\tapp: SHELL_APP_ID,\n\tcomponent: Feedback,\n\troute: 'feedback'\n};\nconst devModeBoardView = {\n\tid: 'dev-mode',\n\tapp: SHELL_APP_ID,\n\tcomponent: DevBoard,\n\troute: 'devtools'\n};\nconst devModeTrigger = {\n\tid: 'dev-mode-t',\n\tcomponent: DevBoardTrigger,\n\tlabel: 'Dev Tools',\n\tapp: SHELL_APP_ID,\n\tposition: 100\n};\nexport const registerDefaultViews = (t: TFunction): void => {\n\tuseAppStore.setState(\n\t\tproduce((s: AppState) => {\n\t\t\ts.routes = {\n\t\t\t\t[SEARCH_APP_ID]: searchRoute,\n\t\t\t\t[SETTINGS_APP_ID]: settingsRoute\n\t\t\t};\n\t\t\ts.views.primaryBar = [searchPrimaryBar(t), settingsPrimaryBar(t)];\n\t\t\ts.views.secondaryBar = [settingsSecondaryBar];\n\t\t\ts.views.appView = [searchAppView, settingsAppView];\n\t\t\ts.views.settings = [settingsGeneralView(t), settingsAccountsView(t)];\n\t\t\ts.views.board = [feedbackBoardView];\n\t\t\tif (__CARBONIO_DEV__) {\n\t\t\t\ts.views.board.push(devModeBoardView);\n\t\t\t\ts.views.primaryBarAccessories.push(devModeTrigger);\n\t\t\t}\n\t\t})\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable import/no-duplicates */\n/* eslint-disable import/no-named-default */\nimport { forOwn } from 'lodash';\nimport { ComponentType } from 'react';\nimport { useAppStore } from '../../store/app';\nimport { getAppFunctions } from './app-loader-functions';\nimport { Spinner } from '../../ui-extras/spinner';\nimport { AppLink } from '../../ui-extras/app-link';\nimport * as CONSTANTS from '../../constants';\nimport { IShellWindow, CarbonioModule } from '../../../types';\nimport { getAppSetters } from './app-loader-setters';\nimport { report } from '../../reporting';\nimport SettingsHeader from '../../settings/components/settings-header';\n\nexport const _scripts: { [pkgName: string]: HTMLScriptElement } = {};\nlet _scriptId = 0;\n// const _revertableActions: { [pkgName: string]: RevertableActionCollection } = {};\n\n// export function updateAppHandlers(appPkg: CarbonioModule, handlers: RequestHandlersList): void {\n// \tif (FLAVOR === 'NPM' && typeof devUtils !== 'undefined') {\n// \t\tconst worker = devUtils.getMSWorker<SetupWorkerApi>();\n// \t\tif (worker) {\n// \t\t\tworker.resetHandlers();\n// \t\t\tforEach(handlers, (h) => worker.use(h));\n// \t\t}\n// \t}\n// }\n\nexport function loadApp(appPkg: CarbonioModule): Promise<CarbonioModule> {\n\treturn new Promise((_resolve, _reject) => {\n\t\tlet resolved = false;\n\t\tconst resolve: (...args: any[]) => void = (...args) => {\n\t\t\tif (!resolved) {\n\t\t\t\tresolved = true;\n\t\t\t\t_resolve(appPkg);\n\t\t\t}\n\t\t};\n\t\tconst reject: (e: unknown) => void = (e) => {\n\t\t\tif (!resolved) {\n\t\t\t\tresolved = true;\n\t\t\t\t_reject(e);\n\t\t\t}\n\t\t};\n\t\ttry {\n\t\t\t(window as unknown as IShellWindow).__ZAPP_SHARED_LIBRARIES__['@zextras/carbonio-shell-ui'][\n\t\t\t\tappPkg.name\n\t\t\t] = {\n\t\t\t\treport: report(appPkg.name),\n\t\t\t\tAppLink,\n\t\t\t\tSpinner,\n\t\t\t\tSettingsHeader,\n\t\t\t\t...getAppSetters(appPkg),\n\t\t\t\t...getAppFunctions(appPkg),\n\t\t\t\t...CONSTANTS\n\t\t\t};\n\n\t\t\t(window as unknown as IShellWindow).__ZAPP_HMR_EXPORT__[appPkg.name] = (\n\t\t\t\tappComponent: ComponentType\n\t\t\t): void => {\n\t\t\t\tuseAppStore.setState((state) => ({\n\t\t\t\t\tentryPoints: {\n\t\t\t\t\t\t...state.entryPoints,\n\t\t\t\t\t\t[appPkg.name]: appComponent\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\t\tconsole.info(\n\t\t\t\t\t`%c loaded ${appPkg.name}`,\n\t\t\t\t\t'color: white; background: #539507;padding: 4px 8px 2px 4px; font-family: sans-serif; border-radius: 12px; width: 100%'\n\t\t\t\t);\n\t\t\t\tresolve(appPkg);\n\t\t\t};\n\n\t\t\t// if (FLAVOR === 'NPM' && typeof cliSettings !== 'undefined' && cliSettings.hasHandlers) {\n\t\t\t// eslint-disable-next-line max-len\n\t\t\t// (\n\t\t\t// \twindow as unknown as IShellWindow<SharedLibrariesAppsMap, ComponentClass>\n\t\t\t// ).__ZAPP_HMR_HANDLERS__[appPkg.name] = (handlers: RequestHandlersList): void =>\n\t\t\t// \tupdateAppHandlers(appPkg, handlers);\n\t\t\t// }\n\t\t\tconst script: HTMLScriptElement = document.createElement('script');\n\t\t\tscript.setAttribute('type', 'text/javascript');\n\t\t\tscript.setAttribute('data-pkg_name', appPkg.name);\n\t\t\tscript.setAttribute('data-pkg_version', appPkg.version);\n\t\t\tscript.setAttribute('data-is_app', 'true');\n\t\t\tscript.setAttribute('src', `${appPkg.js_entrypoint}`);\n\t\t\tdocument.body.appendChild(script);\n\t\t\t_scripts[`${appPkg.name}-loader-${(_scriptId += 1)}`] = script;\n\t\t} catch (err: unknown) {\n\t\t\tconsole.error(err);\n\t\t\treject(err);\n\t\t}\n\t});\n}\n\nexport function unloadApps(): Promise<void> {\n\treturn Promise.resolve().then(() => {\n\t\tforOwn(_scripts, (script) => {\n\t\t\tif (script.parentNode) script.parentNode.removeChild(script);\n\t\t});\n\t});\n}\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { filter, map } from 'lodash';\n\nimport { loadApp, unloadApps } from './load-app';\nimport { CarbonioModule } from '../../../types';\nimport { injectSharedLibraries } from './shared-libraries';\nimport { getUserSetting } from '../../store/account';\nimport { useReporter } from '../../reporting';\nimport { SHELL_APP_ID } from '../../constants';\nimport { addI18n } from '../../store/i18n';\n\nexport function loadApps(apps: Array<CarbonioModule>): void {\n\tinjectSharedLibraries();\n\tconst appsToLoad = filter(apps, (app) => {\n\t\tif (app.name === SHELL_APP_ID) return false;\n\t\tif (app.attrKey && getUserSetting('attrs', app.attrKey) === 'FALSE') return false;\n\t\treturn true;\n\t});\n\tconsole.log(\n\t\t'%cLOADING APPS',\n\t\t'color: white; background: #2b73d2;padding: 4px 8px 2px 4px; font-family: sans-serif; border-radius: 12px; width: 100%'\n\t);\n\tuseReporter.getState().setClients(appsToLoad);\n\taddI18n(appsToLoad);\n\tPromise.allSettled(map(appsToLoad, (app) => loadApp(app)));\n}\n\nexport function unloadAllApps(): Promise<void> {\n\treturn unloadApps();\n}\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable import/no-duplicates */\n/* eslint-disable import/no-named-default */\n\nimport React from 'react';\nimport * as PropTypes from 'prop-types';\nimport * as ReactDOM from 'react-dom';\nimport * as Lodash from 'lodash';\nimport * as ReactRouterDom from 'react-router-dom';\nimport * as Moment from 'moment';\nimport * as ReactI18n from 'react-i18next';\n// import * as Msw from 'msw';\n// import * as Faker from 'faker';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport * as ReactRedux from 'react-redux';\nimport * as ReduxJSToolkit from '@reduxjs/toolkit';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport * as ZappUI from '@zextras/carbonio-design-system';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport * as StyledComponents from 'styled-components';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// import * as Preview from '../../preview';\nimport * as Preview from '@zextras/carbonio-ui-preview';\n\nimport { IShellWindow } from '../../../types';\n\nexport function injectSharedLibraries(): void {\n\t// eslint-disable-next-line max-len\n\tconst wnd: IShellWindow = window as unknown as IShellWindow;\n\tif (wnd.__ZAPP_SHARED_LIBRARIES__) {\n\t\treturn;\n\t}\n\twnd.__ZAPP_SHARED_LIBRARIES__ = {\n\t\t'prop-types': PropTypes,\n\t\treact: React,\n\t\t'react-dom': ReactDOM,\n\t\t'react-i18next': ReactI18n,\n\t\t'react-redux': ReactRedux,\n\t\tlodash: Lodash,\n\t\t'react-router-dom': ReactRouterDom,\n\t\tmoment: Moment,\n\t\t'styled-components': StyledComponents,\n\t\t'@reduxjs/toolkit': ReduxJSToolkit,\n\t\t'@zextras/carbonio-shell-ui': {},\n\t\t'@zextras/carbonio-design-system': ZappUI,\n\t\t'@zextras/carbonio-ui-preview': Preview\n\t};\n\twnd.__ZAPP_HMR_EXPORT__ = {};\n}\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC } from 'react';\nimport { I18nextProvider } from 'react-i18next';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport { useI18nStore } from '../store/i18n';\n\nconst BootstrapperContextProvider: FC = ({ children }) => (\n\t<I18nextProvider i18n={useI18nStore.getState().defaultI18n}>{children}</I18nextProvider>\n);\nexport default BootstrapperContextProvider;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useContext, useEffect } from 'react';\nimport { BrowserRouter, Route, Switch, useHistory, useParams } from 'react-router-dom';\nimport {\n\tSnackbarManagerContext,\n\tModalManagerContext,\n\tModalManager,\n\tSnackbarManager\n} from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport AppLoaderMounter from './app/app-loader-mounter';\nimport { useBridge } from '../store/context-bridge';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport ShellView from '../shell/shell-view';\nimport { BASENAME, IS_STANDALONE } from '../constants';\nimport { useAppStore } from '../store/app';\nimport { NotificationPermissionChecker } from '../notification/NotificationPermissionChecker';\nimport { registerDefaultViews } from './app/default-views';\n\nconst ContextBridge: FC = () => {\n\tconst history = useHistory();\n\t// eslint-disable-next-line @typescript-eslint/ban-types\n\tconst createSnackbar = useContext(SnackbarManagerContext) as Function;\n\t// eslint-disable-next-line @typescript-eslint/ban-types\n\tconst createModal = useContext(ModalManagerContext) as Function;\n\tuseBridge({\n\t\tfunctions: {\n\t\t\tgetHistory: () => history,\n\t\t\tcreateSnackbar,\n\t\t\tcreateModal\n\t\t}\n\t});\n\treturn null;\n};\n\nconst StandaloneListener: FC = () => {\n\tconst { route } = useParams<{ route?: string }>();\n\tuseEffect(() => {\n\t\tif (route) useAppStore.setState({ standalone: route });\n\t}, [route]);\n\treturn null;\n};\n\nconst DefaultViewsRegister: FC = () => {\n\tconst [t] = useTranslation();\n\tuseEffect(() => {\n\t\tregisterDefaultViews(t);\n\t}, [t]);\n\treturn null;\n};\n\nconst BootstrapperRouter: FC = () => (\n\t<BrowserRouter basename={BASENAME}>\n\t\t<SnackbarManager>\n\t\t\t<ModalManager>\n\t\t\t\t{IS_STANDALONE && (\n\t\t\t\t\t<Switch>\n\t\t\t\t\t\t<Route path={'/:route'}>\n\t\t\t\t\t\t\t<StandaloneListener />\n\t\t\t\t\t\t</Route>\n\t\t\t\t\t</Switch>\n\t\t\t\t)}\n\t\t\t\t<DefaultViewsRegister />\n\t\t\t\t<NotificationPermissionChecker />\n\t\t\t\t<ContextBridge />\n\t\t\t\t<AppLoaderMounter />\n\t\t\t\t<ShellView />\n\t\t\t</ModalManager>\n\t\t</SnackbarManager>\n\t</BrowserRouter>\n);\nexport default BootstrapperRouter;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useEffect } from 'react';\nimport { SnackbarManager, ModalManager } from '@zextras/carbonio-design-system';\nimport { init } from './init';\nimport { ThemeProvider } from './theme-provider';\nimport BootstrapperRouter from './bootstrapper-router';\nimport BootstrapperContextProvider from './bootstrapper-provider';\nimport { unloadAllApps } from './app/load-apps';\n\nconst Bootstrapper: FC = () => {\n\tuseEffect(() => {\n\t\tinit();\n\t\treturn () => {\n\t\t\tunloadAllApps();\n\t\t};\n\t}, []);\n\treturn (\n\t\t<ThemeProvider>\n\t\t\t<BootstrapperContextProvider>\n\t\t\t\t<BootstrapperRouter />\n\t\t\t</BootstrapperContextProvider>\n\t\t</ThemeProvider>\n\t);\n};\n\nexport default Bootstrapper;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { useAccountStore } from '../store/account';\nimport { useAppStore } from '../store/app';\nimport { loadApps } from './app/load-apps';\nimport { getInfo } from '../network/get-info';\nimport { setLocale } from '../store/i18n';\n\nexport const init = (): void => {\n\tgetInfo().finally(() => {\n\t\tsetLocale(\n\t\t\t(useAccountStore.getState().settings?.prefs?.zimbraPrefLocale as string) ??\n\t\t\t\t(useAccountStore.getState().settings?.attrs?.zimbraLocale as string) ??\n\t\t\t\t'en'\n\t\t);\n\t\tloadApps(Object.values(useAppStore.getState().apps));\n\t});\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { createContext, FC, useCallback, useEffect, useState } from 'react';\nimport { ThemeProvider as UIThemeProvider } from '@zextras/carbonio-design-system';\nimport { enable, disable, auto, setFetchMethod } from 'darkreader';\nimport { reduce } from 'lodash';\nimport { useAccountStore } from '../store/account';\nimport { DRPropValues, ThemeExtension, ThemeExtensionMap } from '../../types';\nimport { darkReaderDynamicThemeFixes } from '../constants';\n\nsetFetchMethod(window.fetch);\n\nexport const ThemeCallbacksContext = createContext<{\n\taddExtension: (newExtension: ThemeExtension, id: string) => void;\n\tsetDarkReaderState: (newState: DRPropValues) => void;\n}>({\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\taddExtension: (newExtension: ThemeExtension, id: string) => {},\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\tsetDarkReaderState: (newState: DRPropValues) => {}\n});\n\nconst themeSizes = (\n\tsize: 'small' | 'normal' | 'large' | 'larger' | 'default' | string\n): ThemeExtension => {\n\tswitch (size) {\n\t\tcase 'small': {\n\t\t\treturn (theme: any): any => {\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ttheme.sizes.font = {\n\t\t\t\t\textrasmall: '10px',\n\t\t\t\t\tsmall: '12px',\n\t\t\t\t\tmedium: '14px',\n\t\t\t\t\tlarge: '16px'\n\t\t\t\t};\n\t\t\t\treturn theme;\n\t\t\t};\n\t\t}\n\t\tcase 'large': {\n\t\t\treturn (theme: any): any => {\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ttheme.sizes.font = {\n\t\t\t\t\textrasmall: '14px',\n\t\t\t\t\tsmall: '16px',\n\t\t\t\t\tmedium: '18px',\n\t\t\t\t\tlarge: '20px'\n\t\t\t\t};\n\t\t\t\treturn theme;\n\t\t\t};\n\t\t}\n\t\tcase 'larger': {\n\t\t\treturn (theme: any): any => {\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ttheme.sizes.font = {\n\t\t\t\t\textrasmall: '16px',\n\t\t\t\t\tsmall: '18px',\n\t\t\t\t\tmedium: '20px',\n\t\t\t\t\tlarge: '22px'\n\t\t\t\t};\n\t\t\t\treturn theme;\n\t\t\t};\n\t\t}\n\t\tcase 'default':\n\t\tcase 'normal':\n\t\tdefault: {\n\t\t\treturn (theme: any): any => {\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ttheme.sizes.font = {\n\t\t\t\t\textrasmall: '12px',\n\t\t\t\t\tsmall: '14px',\n\t\t\t\t\tmedium: '16px',\n\t\t\t\t\tlarge: '18px'\n\t\t\t\t};\n\t\t\t\treturn theme;\n\t\t\t};\n\t\t}\n\t}\n};\n\nconst paletteExtension =\n\t(): ThemeExtension =>\n\t(theme: any): any => {\n\t\t// eslint-disable-next-line no-param-reassign\n\t\ttheme.palette.shared = {\n\t\t\tregular: '#FFB74D',\n\t\t\thover: '#FFA21A',\n\t\t\tactive: '#FFA21A',\n\t\t\tfocus: '#FF9800',\n\t\t\tdisabled: '#FFD699'\n\t\t};\n\t\t// eslint-disable-next-line no-param-reassign\n\t\ttheme.palette.linked = {\n\t\t\tregular: '#AB47BC',\n\t\t\thover: '#8B3899',\n\t\t\tactive: '#8B3899',\n\t\t\tfocus: '#7A3187',\n\t\t\tdisabled: '#DDB4E4'\n\t\t};\n\t\treturn theme;\n\t};\n\nconst iconExtension =\n\t(): ThemeExtension =>\n\t(theme: any): any => {\n\t\t// eslint-disable-next-line no-param-reassign\n\t\ttheme.icons.Shared = theme.icons.ArrowCircleRight;\n\t\t// eslint-disable-next-line no-param-reassign\n\t\ttheme.icons.Linked = theme.icons.ArrowCircleLeft;\n\t\treturn theme;\n\t};\n\nexport const ThemeProvider: FC = ({ children }) => {\n\tconst zimbraPrefFontSize = useAccountStore((s) => s.settings.prefs?.zimbraPrefFontSize as string);\n\t// TODO: update when the DS is fully typed :D\n\tconst [extensions, setExtensions] = useState<ThemeExtensionMap>({\n\t\tfonts: (theme) => {\n\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\ttheme.sizes.font = {\n\t\t\t\textrasmall: '12px',\n\t\t\t\tsmall: '14px',\n\t\t\t\tmedium: '16px',\n\t\t\t\tlarge: '18px'\n\t\t\t};\n\t\t\treturn theme;\n\t\t}\n\t});\n\tuseEffect(() => {\n\t\tsetExtensions((e) => ({\n\t\t\t...e,\n\t\t\tfonts: themeSizes(zimbraPrefFontSize),\n\t\t\tpalette: paletteExtension(),\n\t\t\ticons: iconExtension()\n\t\t}));\n\t}, [zimbraPrefFontSize]);\n\tconst [darkReaderState, setDarkReaderState] = useState<'auto' | 'disabled' | 'enabled'>('auto');\n\tuseEffect(() => {\n\t\tswitch (darkReaderState) {\n\t\t\tcase 'disabled':\n\t\t\t\tdisable();\n\t\t\t\tbreak;\n\t\t\tcase 'enabled':\n\t\t\t\tenable(\n\t\t\t\t\t{\n\t\t\t\t\t\tsepia: -50\n\t\t\t\t\t},\n\t\t\t\t\tdarkReaderDynamicThemeFixes\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t\tcase 'auto':\n\t\t\tdefault:\n\t\t\t\tauto(\n\t\t\t\t\t{\n\t\t\t\t\t\tsepia: -50\n\t\t\t\t\t},\n\t\t\t\t\tdarkReaderDynamicThemeFixes\n\t\t\t\t);\n\t\t\t\tbreak;\n\t\t}\n\t}, [darkReaderState]);\n\tconst aggregatedExtensions = useCallback(\n\t\t(theme: any) => reduce(extensions, (acc, val) => val(acc), theme),\n\t\t[extensions]\n\t);\n\tconst addExtension = useCallback((newExtension: ThemeExtension, id: string) => {\n\t\tsetExtensions((ext) => ({ ...ext, [id]: newExtension }));\n\t}, []);\n\n\treturn (\n\t\t<UIThemeProvider extension={aggregatedExtensions}>\n\t\t\t<ThemeCallbacksContext.Provider value={{ addExtension, setDarkReaderState }}>\n\t\t\t\t{children}\n\t\t\t</ThemeCallbacksContext.Provider>\n\t\t</UIThemeProvider>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport { DynamicThemeFix } from 'darkreader';\n\n/*\n\treference: https://zextras.atlassian.net/wiki/spaces/IRIS/pages/223215854/UI+Guidelines+and+theming\n*/\nexport const ZIMBRA_STANDARD_COLORS = [\n\t{ zValue: 0, hex: '#000000', zLabel: 'black' },\n\t{ zValue: 1, hex: '#2b73d2', zLabel: 'blue' },\n\t{ zValue: 2, hex: '#2196d3', zLabel: 'cyan' },\n\t{ zValue: 3, hex: '#639030', zLabel: 'green' },\n\t{ zValue: 4, hex: '#1a75a7', zLabel: 'purple' },\n\t{ zValue: 5, hex: '#d74942', zLabel: 'red' },\n\t{ zValue: 6, hex: '#ffc107', zLabel: 'yellow' },\n\t{ zValue: 7, hex: '#edaeab', zLabel: 'pink' },\n\t{ zValue: 8, hex: '#828282', zLabel: 'gray' },\n\t{ zValue: 9, hex: '#ba8b00', zLabel: 'orange' }\n];\n\nexport const FOLDERS = {\n\tUSER_ROOT: '1',\n\tINBOX: '2',\n\tTRASH: '3',\n\tSPAM: '4',\n\tSENT: '5',\n\tDRAFTS: '6',\n\tCONTACTS: '7',\n\tTAGS: '8',\n\tCONVERSATIONS: '9',\n\tCALENDAR: '10',\n\tROOT: '11',\n\tNOTEBOOK: '12', // no longer created in new mailboxes since Helix (bug 39647). old mailboxes may still contain a system folder with id 12\n\tAUTO_CONTACTS: '13',\n\tIM_LOGS: '14',\n\tTASKS: '15',\n\tBRIEFCASE: '16'\n};\n\nexport const SHELL_APP_ID = 'carbonio-shell-ui';\nexport const SETTINGS_APP_ID = 'settings';\nexport const ACCOUNTS_APP_ID = 'accounts';\nexport const SEARCH_APP_ID = 'search';\nexport const ACTION_TYPES = {\n\tCONVERSATION: 'conversation',\n\tCONVERSATION_lIST: 'conversation_list',\n\tMESSAGE: 'message',\n\tMESSAGE_lIST: 'message_list',\n\tCONTACT: 'contact',\n\tCONTACT_lIST: 'contact_list',\n\tINVITE: 'invite',\n\tINVITE_lIST: 'invite_list',\n\tAPPOINTMENT: 'appointment',\n\tAPPOINTMENT_lIST: 'appointment_list',\n\tFOLDER: 'folder',\n\tFOLDER_lIST: 'folder_list',\n\tCALENDAR: 'calendar',\n\tCALENDAR_lIST: 'calendar_list',\n\tNEW: 'new'\n};\n\nexport const darkReaderDynamicThemeFixes: DynamicThemeFix = {\n\tignoreImageAnalysis: ['.no-dr-invert *'],\n\tinvert: [],\n\tcss: `\n\t\t.tox, .force-white-bg, .tox-swatches-menu, .tox .tox-edit-area__iframe {\n\t\t\tbackground-color: #fff !important;\n\t\t\tbackground: #fff !important;\n\t\t}\n\t`,\n\tignoreInlineStyle: ['.tox-menu *'],\n\tdisableStyleSheetsProxy: false\n};\n\nconst base = '/carbonio/';\n\nconst standaloneBase = `${base}standalone`;\n\nexport const IS_STANDALONE = window.location.pathname.startsWith(standaloneBase);\nexport const BASENAME = IS_STANDALONE ? standaloneBase : base;\nexport const EMAIL_VALIDATION_REGEX =\n\t// eslint-disable-next-line @typescript-eslint/no-unused-vars, max-len, no-control-regex\n\t/(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])/;\n\nexport const ROOT_NAME = 'USER_ROOT';\n\nexport const DR_VALUES = ['auto', 'enabled', 'disabled'];\n\nexport const FOLDER_VIEW = {\n\tsearch_folder: 'search folder',\n\ttag: 'tag',\n\tconversation: 'conversation',\n\tmessage: 'message',\n\tcontact: 'contact',\n\tdocument: 'document',\n\tappointment: 'appointment',\n\tvirtual_conversation: 'virtual conversation',\n\tremote_folder: 'remote folder',\n\twiki: 'wiki',\n\ttask: 'task',\n\tchat: 'chat'\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC } from 'react';\nimport { IconButton } from '@zextras/carbonio-design-system';\nimport { addBoard } from '../store/boards';\nimport { SHELL_APP_ID } from '../constants';\n\nconst DevBoardTrigger: FC = () => (\n\t<IconButton\n\t\ticon=\"Code\"\n\t\tsize=\"large\"\n\t\tonClick={(): void => {\n\t\t\taddBoard(SHELL_APP_ID)({ url: '/devtools/', title: 'Dev Tools' });\n\t\t}}\n\t/>\n);\n\nexport default DevBoardTrigger;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC } from 'react';\n\nconst DevBoard: FC = () => <p>Test</p>;\n\nexport default DevBoard;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { To } from 'history';\nimport { find, startsWith, replace, trim } from 'lodash';\nimport { useMemo, useCallback } from 'react';\nimport { useLocation, useHistory } from 'react-router-dom';\nimport { AppRoute, HistoryParams } from '../../types';\nimport { SEARCH_APP_ID } from '../constants';\nimport { useSearchStore } from '../search/search-store';\nimport { useRoutes, getRoutes } from '../store/app';\nimport { useContextBridge } from '../store/context-bridge';\n\nexport const useCurrentRoute = (): AppRoute | undefined => {\n\tconst location = useLocation();\n\tconst routes = useRoutes();\n\treturn useMemo(\n\t\t() => find(routes, (r) => startsWith(trim(location.pathname, '/'), r.route)),\n\t\t[location.pathname, routes]\n\t);\n};\nexport const getCurrentRoute = (): AppRoute | undefined => {\n\tconst history = useContextBridge.getState().functions.getHistory?.();\n\tconst routes = getRoutes();\n\tconst route = find(routes, (r) => startsWith(trim(history.location.pathname, '/'), r.route));\n\tif (route?.route === SEARCH_APP_ID) {\n\t\treturn {\n\t\t\t...route,\n\t\t\troute: `${route.route}/${useSearchStore.getState().module}`\n\t\t};\n\t}\n\treturn route;\n};\n\nexport const parseParams = (params: HistoryParams): To => {\n\tif (typeof params === 'string') {\n\t\treturn replace(`/${getCurrentRoute()?.route}/${params}`, '//', '/');\n\t}\n\tconst routeToApply = params.route\n\t\t? find(getRoutes(), (r) => r.id === params.route || r.route === params.route)\n\t\t: getCurrentRoute();\n\treturn typeof params.path === 'string'\n\t\t? replace(`/${routeToApply?.route}/${params.path}`, '//', '/')\n\t\t: {\n\t\t\t\tsearch: params.path.search,\n\t\t\t\thash: params.path.hash,\n\t\t\t\tpathname: replace(`/${routeToApply?.route}/${params.path.pathname}`, '//', '/')\n\t\t };\n};\n\nexport const usePushHistoryCallback = (): ((params: HistoryParams) => void) => {\n\tconst history = useHistory();\n\tconst cb = useCallback(\n\t\t(params: HistoryParams): void => history.push(parseParams(params)),\n\t\t[history]\n\t);\n\treturn cb;\n};\n\nexport const useReplaceHistoryCallback = (): ((params: HistoryParams) => void) => {\n\tconst history = useHistory();\n\tconst cb = useCallback(\n\t\t(params: HistoryParams): void => history.replace(parseParams(params)),\n\t\t[history]\n\t);\n\treturn cb;\n};\n\nexport function useGoBackHistoryCallback(): () => void {\n\tconst history = useHistory();\n\treturn history.goBack;\n}\n\nexport const pushHistory = (params: HistoryParams): void => {\n\tconst history = useContextBridge.getState().functions.getHistory?.();\n\thistory.push(parseParams(params));\n};\n\nexport const replaceHistory = (params: HistoryParams): void => {\n\tconst history = useContextBridge.getState().functions.getHistory?.();\n\thistory.replace(parseParams(params));\n};\n\nexport const goBackHistory = (): void =>\n\tuseContextBridge.getState().functions.getHistory?.().goBack();\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { filter, find, findIndex, forEach, map, reduce, isArray } from 'lodash';\nimport { SHELL_APP_ID } from '../constants';\nimport { useAccountStore } from '../store/account/store';\nimport { AccountState, Mods, Account } from '../../types';\nimport { getXmlSoapFetch } from './fetch';\n\nexport const editSettings = (mods: Mods, appId: string = SHELL_APP_ID): Promise<any> =>\n\tgetXmlSoapFetch(SHELL_APP_ID)(\n\t\t'Batch',\n\t\t`<BatchRequest xmlns=\"urn:zimbra\" onerror=\"stop\">${\n\t\t\tmods.props\n\t\t\t\t? `<ModifyPropertiesRequest xmlns=\"urn:zimbraAccount\">${map(\n\t\t\t\t\t\tmods.props,\n\t\t\t\t\t\t(prop, key) => `<prop name=\"${key}\" zimlet=\"${prop.app ?? appId}\">${prop.value}</prop>`\n\t\t\t\t )}</ModifyPropertiesRequest>`\n\t\t\t\t: ''\n\t\t}${\n\t\t\tmods.prefs\n\t\t\t\t? `<ModifyPrefsRequest xmlns=\"urn:zimbraAccount\">${map(mods.prefs, (pref, key) =>\n\t\t\t\t\t\tisArray(pref)\n\t\t\t\t\t\t\t? map(pref, (p) => `<pref name=\"${key}\">${p}</pref>`).join('')\n\t\t\t\t\t\t\t: `<pref name=\"${key}\">${pref}</pref>`\n\t\t\t\t ).join('')}</ModifyPrefsRequest>`\n\t\t\t\t: ''\n\t\t}${\n\t\t\tmods.identity?.modifyList\n\t\t\t\t? map(\n\t\t\t\t\t\tmods.identity.modifyList,\n\t\t\t\t\t\t(item) =>\n\t\t\t\t\t\t\t`<ModifyIdentityRequest xmlns=\"urn:zimbraAccount\" requestId=\"0\"><identity id=\"${\n\t\t\t\t\t\t\t\titem.id\n\t\t\t\t\t\t\t}\">${map(item.prefs, (value, key) => `<a name=\"${key}\">${value}</a>`).join(\n\t\t\t\t\t\t\t\t''\n\t\t\t\t\t\t\t)}<a name=\"zimbraPrefFromAddressType\">sendAs</a></identity></ModifyIdentityRequest>`\n\t\t\t\t ).join('')\n\t\t\t\t: ''\n\t\t}${\n\t\t\tmods.identity?.deleteList\n\t\t\t\t? map(\n\t\t\t\t\t\tmods.identity.deleteList,\n\t\t\t\t\t\t(item) =>\n\t\t\t\t\t\t\t`<DeleteIdentityRequest xmlns=\"urn:zimbraAccount\" requestId=\"0\"><identity id=\"${item}\"/></DeleteIdentityRequest>`\n\t\t\t\t ).join('')\n\t\t\t\t: ''\n\t\t}${\n\t\t\tmods.identity?.createList\n\t\t\t\t? map(\n\t\t\t\t\t\tmods.identity.createList,\n\t\t\t\t\t\t(item) =>\n\t\t\t\t\t\t\t`<CreateIdentityRequest xmlns=\"urn:zimbraAccount\" requestId=\"${item.prefs.requestId}\"><identity name=\"${item.prefs.zimbraPrefIdentityName}\"><a name=\"zimbraPrefIdentityName\">${item.prefs.zimbraPrefIdentityName}</a><a name=\"zimbraPrefFromDisplay\">${item.prefs.zimbraPrefFromDisplay}</a><a name=\"zimbraPrefFromAddress\">${item.prefs.zimbraPrefFromAddress}</a><a name=\"zimbraPrefFromAddressType\">sendAs</a><a name=\"zimbraPrefReplyToEnabled\">${item.prefs.zimbraPrefReplyToEnabled}</a><a name=\"zimbraPrefReplyToDisplay\">${item.prefs.zimbraPrefReplyToDisplay}</a><a name=\"zimbraPrefReplyToAddress\">${item.prefs.zimbraPrefReplyToAddress}</a><a name=\"zimbraPrefDefaultSignatureId\">${item.prefs.zimbraPrefDefaultSignatureId}</a><a name=\"zimbraPrefForwardReplySignatureId\">${item.prefs.zimbraPrefForwardReplySignatureId}</a><a name=\"zimbraPrefWhenSentToEnabled\">${item.prefs.zimbraPrefWhenSentToEnabled}</a><a name=\"zimbraPrefWhenInFoldersEnabled\">${item.prefs.zimbraPrefWhenInFoldersEnabled}</a></identity></CreateIdentityRequest>`\n\t\t\t\t ).join('')\n\t\t\t\t: ''\n\t\t}${\n\t\t\tmods.permissions\n\t\t\t\t? `<RevokeRightsRequest xmlns=\"urn:zimbraAccount\" requestId=\"0\">${\n\t\t\t\t\t\tmods.permissions.freeBusy\n\t\t\t\t\t\t\t? map(mods.permissions.freeBusy.current, (right) => {\n\t\t\t\t\t\t\t\t\tif (right.gt === 'dom')\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"viewFreeBusy\" gt=\"${right.gt}\" zid=\"${right.zid}\" d=\"zextras.com\"/>`;\n\t\t\t\t\t\t\t\t\tif (right.gt === 'all' && right.deny)\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"viewFreeBusy\" gt=\"${right.gt}\" zid=\"${right.zid}\" deny=\"1\"/>`;\n\t\t\t\t\t\t\t\t\tif (right.gt === 'usr')\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"viewFreeBusy\" gt=\"${right.gt}\" zid=\"${right.zid}\" d=\"${right.d}\"/>`;\n\t\t\t\t\t\t\t\t\treturn `<ace right=\"viewFreeBusy\" gt=\"${right.gt}\" zid=\"${right.zid}\" />`;\n\t\t\t\t\t\t\t }).join('')\n\t\t\t\t\t\t\t: ''\n\t\t\t\t }${\n\t\t\t\t\t\tmods.permissions.inviteRight\n\t\t\t\t\t\t\t? map(mods.permissions.inviteRight.current, (right) => {\n\t\t\t\t\t\t\t\t\tif (right.gt === 'all' && right.deny)\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"invite\" gt=\"${right.gt}\" zid=\"${right.zid}\" deny=\"1\"/>`;\n\t\t\t\t\t\t\t\t\tif (right.gt === 'usr')\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"invite\" gt=\"${right.gt}\" zid=\"${right.zid}\" d=\"${right.d}\"/>`;\n\t\t\t\t\t\t\t\t\treturn `<ace right=\"invite\" gt=\"${right.gt}\" zid=\"${right.zid}\" />`;\n\t\t\t\t\t\t\t }).join('')\n\t\t\t\t\t\t\t: ''\n\t\t\t\t }</RevokeRightsRequest><GrantRightsRequest xmlns=\"urn:zimbraAccount\" requestId=\"1\">${\n\t\t\t\t\t\tmods.permissions.freeBusy\n\t\t\t\t\t\t\t? `${((): string => {\n\t\t\t\t\t\t\t\t\tif (mods.permissions.freeBusy.new.gt === 'dom') {\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"viewFreeBusy\" gt=\"${mods.permissions.freeBusy.new.gt}\" d=\"zextras.com\"/>`;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\tmods.permissions.freeBusy.new.gt === 'all' &&\n\t\t\t\t\t\t\t\t\t\tmods.permissions.freeBusy.new.deny\n\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"viewFreeBusy\" gt=\"${mods.permissions.freeBusy.new.gt}\" deny=\"1\"/>`;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (mods.permissions.freeBusy.new.gt === 'usr') {\n\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\t\t\t\treturn map(\n\t\t\t\t\t\t\t\t\t\t\tmods.permissions.freeBusy.new.d,\n\t\t\t\t\t\t\t\t\t\t\t(u) =>\n\t\t\t\t\t\t\t\t\t\t\t\t`<ace right=\"viewFreeBusy\" gt=\"${mods.permissions?.freeBusy.new.gt}\" d=\"${u.email}\"/>`\n\t\t\t\t\t\t\t\t\t\t).join('');\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn `<ace right=\"viewFreeBusy\" gt=\"${mods.permissions.freeBusy.new.gt}\" />`;\n\t\t\t\t\t\t\t })()}`\n\t\t\t\t\t\t\t: ''\n\t\t\t\t }${\n\t\t\t\t\t\tmods.permissions.inviteRight\n\t\t\t\t\t\t\t? `${((): string => {\n\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\tmods.permissions.inviteRight.new.gt === 'all' &&\n\t\t\t\t\t\t\t\t\t\tmods.permissions.inviteRight.new.deny\n\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\treturn `<ace right=\"invite\" gt=\"${mods.permissions.inviteRight.new.gt}\" deny=\"1\"/>`;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (mods.permissions.inviteRight.new.gt === 'usr') {\n\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\t\t\t\treturn map(\n\t\t\t\t\t\t\t\t\t\t\tmods.permissions.inviteRight.new.d,\n\t\t\t\t\t\t\t\t\t\t\t(u) =>\n\t\t\t\t\t\t\t\t\t\t\t\t`<ace right=\"invite\" gt=\"${mods.permissions?.inviteRight.new.gt}\" d=\"${u.email}\"/>`\n\t\t\t\t\t\t\t\t\t\t).join('');\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\treturn `<ace right=\"invite\" gt=\"${mods.permissions?.inviteRight.new.gt}\" />`;\n\t\t\t\t\t\t\t })()}`\n\t\t\t\t\t\t\t: ''\n\t\t\t\t }\n\t</GrantRightsRequest>`\n\t\t\t\t: ''\n\t\t}</BatchRequest>`\n\t).then((r: any) => {\n\t\tuseAccountStore.setState((s: AccountState) => ({\n\t\t\tsettings: {\n\t\t\t\t...s.settings,\n\t\t\t\tprefs: reduce(\n\t\t\t\t\tmods.prefs,\n\t\t\t\t\t(acc, pref, key) => ({\n\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t[key]: pref as string\n\t\t\t\t\t}),\n\t\t\t\t\ts.settings.prefs\n\t\t\t\t),\n\t\t\t\tprops: reduce(\n\t\t\t\t\tmods.props,\n\t\t\t\t\t(acc, { app, value }, key) => {\n\t\t\t\t\t\tconst propIndex = findIndex(acc, (p) => p.name === key && p.zimlet === app);\n\t\t\t\t\t\tif (propIndex >= 0) {\n\t\t\t\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\t\t\t\tacc[propIndex] = {\n\t\t\t\t\t\t\t\tname: key,\n\t\t\t\t\t\t\t\tzimlet: app,\n\t\t\t\t\t\t\t\t_content: value as string\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tacc.push({\n\t\t\t\t\t\t\t\tname: key,\n\t\t\t\t\t\t\t\tzimlet: app,\n\t\t\t\t\t\t\t\t_content: value as string\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t},\n\t\t\t\t\ts.settings.props\n\t\t\t\t)\n\t\t\t},\n\t\t\taccount: {\n\t\t\t\t...s.account,\n\t\t\t\tdisplayName:\n\t\t\t\t\tfind(mods?.identity?.modifyList, (item) => item.id === s?.account?.id)?.prefs\n\t\t\t\t\t\t.zimbraPrefIdentityName || s.account?.displayName,\n\t\t\t\tname:\n\t\t\t\t\tfind(mods?.identity?.modifyList, (item) => item.id === s?.account?.id)?.prefs\n\t\t\t\t\t\t.zimbraPrefFromAddress || s.account?.name,\n\t\t\t\tidentities: {\n\t\t\t\t\tidentity:\n\t\t\t\t\t\ttypeof s.account !== 'undefined'\n\t\t\t\t\t\t\t? reduce(\n\t\t\t\t\t\t\t\t\tmods?.identity?.modifyList,\n\t\t\t\t\t\t\t\t\t(acc, { id, prefs }) => {\n\t\t\t\t\t\t\t\t\t\tconst tempResult = [];\n\t\t\t\t\t\t\t\t\t\tconst propIndex = findIndex(\n\t\t\t\t\t\t\t\t\t\t\tacc,\n\t\t\t\t\t\t\t\t\t\t\t(itemMods, indexAccount) => acc[indexAccount].id === id\n\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\tif (propIndex > -1) {\n\t\t\t\t\t\t\t\t\t\t\tforEach(Object.keys(prefs), (item, _index) => {\n\t\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\t\t\t\t\t\t\t\t\tacc[propIndex]._attrs[item] = Object.values(prefs)[_index];\n\t\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\titem === 'zimbraPrefIdentityName' &&\n\t\t\t\t\t\t\t\t\t\t\t\t\tacc[propIndex].name !== 'DEFAULT'\n\t\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\t\t\t\t\t\t\t\t\t\tacc[propIndex].name = Object.values(prefs)[_index];\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\ttempResult.push(prefs);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\treturn acc;\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t...filter(\n\t\t\t\t\t\t\t\t\t\t\ts.account.identities.identity,\n\t\t\t\t\t\t\t\t\t\t\t(item) => !mods?.identity?.deleteList?.includes(item.id)\n\t\t\t\t\t\t\t\t\t\t).filter((i) => i.name !== 'DEFAULT'),\n\t\t\t\t\t\t\t\t\t\t...map(r?.CreateIdentityResponse, (item) => item.identity[0]),\n\t\t\t\t\t\t\t\t\t\t...filter(\n\t\t\t\t\t\t\t\t\t\t\ts.account.identities.identity,\n\t\t\t\t\t\t\t\t\t\t\t(item) => !mods?.identity?.deleteList?.includes(item.id)\n\t\t\t\t\t\t\t\t\t\t).filter((i) => i.name === 'DEFAULT')\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t )\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t}\n\t\t\t} as Account\n\t\t}));\n\t\treturn r;\n\t});\n\nexport const getEditSettingsForApp =\n\t(app: string) =>\n\t(mods: Mods): Promise<any> =>\n\t\teditSettings(mods, app).then((r) => {\n\t\t\tr.type = 'fulfilled';\n\t\t\treturn r;\n\t\t});\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { find, map, maxBy } from 'lodash';\nimport { goToLogin } from './go-to-login';\nimport {\n\tAccount,\n\tErrorSoapBodyResponse,\n\tErrorSoapResponse,\n\tSoapContext,\n\tSoapResponse\n} from '../../types';\nimport { userAgent } from './user-agent';\nimport { report } from '../reporting';\nimport { useAccountStore } from '../store/account';\nimport { IS_STANDALONE, SHELL_APP_ID } from '../constants';\nimport { useNetworkStore } from '../store/network';\nimport { handleSync } from '../store/network/utils';\n\nexport const noOp = (): void => {\n\t// eslint-disable-next-line @typescript-eslint/no-use-before-define\n\tgetSoapFetch(SHELL_APP_ID)(\n\t\t'NoOp',\n\t\tuseNetworkStore.getState().pollingInterval === 500\n\t\t\t? { _jsns: 'urn:zimbraMail', limitToOneBlocked: 1, wait: 1 }\n\t\t\t: { _jsns: 'urn:zimbraMail' }\n\t);\n};\n\nconst getAccount = (\n\tacc?: Account,\n\totherAccount?: string\n): { by: string; _content: string } | undefined => {\n\tif (otherAccount) {\n\t\treturn {\n\t\t\tby: 'name',\n\t\t\t_content: otherAccount\n\t\t};\n\t}\n\tif (acc) {\n\t\tif (acc.name) {\n\t\t\treturn {\n\t\t\t\tby: 'name',\n\t\t\t\t_content: acc.name\n\t\t\t};\n\t\t}\n\t\tif (acc.id) {\n\t\t\treturn {\n\t\t\t\tby: 'id',\n\t\t\t\t_content: acc.id\n\t\t\t};\n\t\t}\n\t}\n\treturn undefined;\n};\n\nconst getXmlAccount = (acc?: Account, otherAccount?: string): string => {\n\tif (otherAccount) {\n\t\treturn `<account by=\"name\">${otherAccount}</account>`;\n\t}\n\tif (acc) {\n\t\tif (acc.name) {\n\t\t\treturn `<account by=\"name\">${acc.name}</account>`;\n\t\t}\n\t\tif (acc.id) {\n\t\t\treturn `<account by=\"id\">${acc.id}</account>`;\n\t\t}\n\t}\n\treturn '';\n};\n\nconst getXmlSession = (): string => {\n\tconst sessionId = useNetworkStore.getState().session?.id;\n\tif (sessionId) {\n\t\treturn `<session id=\"${sessionId}\"/>`;\n\t}\n\treturn '';\n};\n\nconst normalizeContext = (context: any): SoapContext => {\n\tif (context.notify) {\n\t\t// eslint-disable-next-line no-param-reassign\n\t\tcontext.notify = map(context.notify, (notify) => ({\n\t\t\t...notify,\n\t\t\tdeleted: notify.deleted?.id?.split(',')\n\t\t}));\n\t}\n\treturn context;\n};\n\nconst handleResponse = <R>(api: string, res: SoapResponse<R>): R | ErrorSoapBodyResponse => {\n\tconst { pollingInterval, noOpTimeout } = useNetworkStore.getState();\n\tconst { usedQuota } = useAccountStore.getState();\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t// @ts-ignore\n\tclearTimeout(noOpTimeout);\n\tif (res.Body.Fault) {\n\t\tif (\n\t\t\tfind(\n\t\t\t\t['service.AUTH_REQUIRED', 'service.AUTH_EXPIRED'],\n\t\t\t\t(code) => code === (<ErrorSoapResponse>res).Body.Fault.Detail?.Error?.Code\n\t\t\t)\n\t\t) {\n\t\t\tif (IS_STANDALONE) {\n\t\t\t\tuseAccountStore.setState({ authenticated: false });\n\t\t\t} else {\n\t\t\t\tgoToLogin();\n\t\t\t}\n\t\t}\n\t\tconsole.error(\n\t\t\tnew Error(\n\t\t\t\t`${(<ErrorSoapResponse>res).Body.Fault.Detail?.Error?.Detail}: ${\n\t\t\t\t\t(<ErrorSoapResponse>res).Body.Fault.Reason?.Text\n\t\t\t\t}`\n\t\t\t)\n\t\t);\n\t}\n\tif (res.Header?.context) {\n\t\tconst responseUsedQuota =\n\t\t\tres.Header.context?.refresh?.mbx?.[0]?.s ??\n\t\t\tres.Header.context?.notify?.[0]?.modified?.mbx?.[0]?.s;\n\t\tconst _context = normalizeContext(res.Header.context);\n\t\tconst seq = maxBy(_context.notify, 'seq')?.seq ?? 0;\n\t\thandleSync(_context);\n\t\tuseAccountStore.setState({\n\t\t\tusedQuota: responseUsedQuota ?? usedQuota\n\t\t});\n\t\tconst nextPollingInterval = (res?.Body as { waitDisallowed?: number })?.waitDisallowed\n\t\t\t? 10000\n\t\t\t: pollingInterval;\n\t\tuseNetworkStore.setState({\n\t\t\tnoOpTimeout: setTimeout(() => noOp(), nextPollingInterval),\n\t\t\tpollingInterval: nextPollingInterval,\n\t\t\tseq,\n\t\t\t..._context\n\t\t});\n\t}\n\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t// @ts-ignore\n\treturn res?.Body?.Fault ? (res.Body as ErrorSoapBodyResponse) : (res.Body[`${api}Response`] as R);\n};\nexport const getSoapFetch =\n\t(app: string) =>\n\t<Request, Response>(api: string, body: Request, otherAccount?: string): Promise<Response> => {\n\t\tconst { zimbraVersion, account } = useAccountStore.getState();\n\t\tconst { notify, session } = useNetworkStore.getState();\n\t\treturn fetch(`/service/soap/${api}Request`, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'Content-Type': 'application/json'\n\t\t\t},\n\t\t\tbody: JSON.stringify({\n\t\t\t\tBody: {\n\t\t\t\t\t[`${api}Request`]: body\n\t\t\t\t},\n\t\t\t\tHeader: {\n\t\t\t\t\tcontext: {\n\t\t\t\t\t\t_jsns: 'urn:zimbra',\n\t\t\t\t\t\tnotify: notify?.[0]?.seq\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\tseq: notify?.[0]?.seq\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t: undefined,\n\t\t\t\t\t\tsession: session ?? {},\n\t\t\t\t\t\taccount: getAccount(account as Account, otherAccount),\n\t\t\t\t\t\tuserAgent: {\n\t\t\t\t\t\t\tname: userAgent,\n\t\t\t\t\t\t\tversion: zimbraVersion\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}) // TODO proper error handling\n\t\t\t.then((res) => res?.json())\n\t\t\t.then((res: SoapResponse<Response>) => handleResponse(api, res))\n\t\t\t.catch((e) => {\n\t\t\t\treport(app)(e);\n\t\t\t\tthrow e;\n\t\t\t}) as Promise<Response>;\n\t};\n\nexport const getXmlSoapFetch =\n\t(app: string) =>\n\t<Request, Response>(api: string, body: Request, otherAccount?: string): Promise<Response> => {\n\t\tconst { zimbraVersion, account } = useAccountStore.getState();\n\t\treturn fetch(`/service/soap/${api}Request`, {\n\t\t\tmethod: 'POST',\n\t\t\theaders: {\n\t\t\t\t'content-type': 'application/soap+xml'\n\t\t\t},\n\t\t\tbody: `<?xml version=\"1.0\" encoding=\"utf-8\"?>\n\t\t<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\">\n\t\t\t<soap:Header><context xmlns=\"urn:zimbra\"><userAgent name=\"${userAgent}\" version=\"${zimbraVersion}\"/>${getXmlSession()}${getXmlAccount(\n\t\t\t\taccount,\n\t\t\t\totherAccount\n\t\t\t)}<format type=\"js\"/></context></soap:Header>\n\t\t\t<soap:Body>${body}</soap:Body>\n\t\t</soap:Envelope>`\n\t\t}) // TODO proper error handling\n\t\t\t.then((res) => res?.json())\n\t\t\t.then((res: SoapResponse<Response>) => handleResponse(api, res))\n\t\t\t.catch((e) => {\n\t\t\t\treport(app)(e);\n\t\t\t\tthrow e;\n\t\t\t}) as Promise<Response>;\n\t};\n\nexport const shellSoap = getSoapFetch(SHELL_APP_ID);\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { filter } from 'lodash';\nimport { SHELL_APP_ID } from '../constants';\nimport { useAppStore } from '../store/app';\nimport { normalizeAccount } from '../store/account/normalization';\nimport { AccountSettings, GetInfoResponse, CarbonioModule } from '../../types';\nimport { goToLogin } from './go-to-login';\nimport { getSoapFetch } from './fetch';\nimport { useAccountStore } from '../store/account';\nimport { useNetworkStore } from '../store/network';\n\nconst parsePollingInterval = (settings: AccountSettings): number => {\n\tconst pollingPref = (settings.prefs?.zimbraPrefMailPollingInterval ?? '') as string;\n\tif (pollingPref === '500') {\n\t\treturn 500;\n\t}\n\tconst pollingValue = parseInt(pollingPref, 10);\n\tif (Number.isNaN(pollingValue)) {\n\t\treturn 30000;\n\t}\n\tif (pollingPref.includes('m')) {\n\t\treturn pollingValue * 60 * 1000;\n\t}\n\treturn pollingValue * 1000;\n};\n\nexport const getInfo = (): Promise<void> =>\n\tfetch('/static/iris/components.json')\n\t\t.then((r) => r.json())\n\t\t.then(({ components }: { components: Array<CarbonioModule> }) => {\n\t\t\tuseAppStore.getState().setters.addApps(\n\t\t\t\tfilter(components, ({ type }) => {\n\t\t\t\t\tif (type === 'shell' || type === 'carbonio') return true;\n\t\t\t\t\treturn false;\n\t\t\t\t})\n\t\t\t);\n\t\t})\n\t\t.then(() =>\n\t\t\tgetSoapFetch(SHELL_APP_ID)<{ _jsns: string; rights: string }, GetInfoResponse>('GetInfo', {\n\t\t\t\t_jsns: 'urn:zimbraAccount',\n\t\t\t\trights: 'sendAs,sendAsDistList,viewFreeBusy,sendOnBehalfOf,sendOnBehalfOfDistList'\n\t\t\t})\n\t\t)\n\t\t.then((res: GetInfoResponse): void => {\n\t\t\tif (res) {\n\t\t\t\tconst { account, settings, version } = normalizeAccount(res);\n\t\t\t\tuseNetworkStore.setState({\n\t\t\t\t\tpollingInterval: parsePollingInterval(settings)\n\t\t\t\t});\n\t\t\t\tuseAccountStore.setState({\n\t\t\t\t\tauthenticated: true,\n\t\t\t\t\taccount,\n\t\t\t\t\tsettings,\n\t\t\t\t\tzimbraVersion: version\n\t\t\t\t});\n\t\t\t}\n\t\t})\n\t\t.catch((err: Error) => {\n\t\t\tconsole.error(err);\n\t\t});\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nexport const goToLogin: () => void = () => {\n\twindow?.location?.assign?.(`${window?.location?.origin}/static/login`);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { SHELL_APP_ID } from '../constants';\nimport { getSoapFetch } from './fetch';\nimport { goToLogin } from './go-to-login';\n\nexport const logout = (): Promise<void> =>\n\tgetSoapFetch(SHELL_APP_ID)('EndSession', {\n\t\t_jsns: 'urn:zimbraAccount'\n\t}).then(() => {\n\t\tfetch('/?loginOp=logout')\n\t\t\t.then((res) => res)\n\t\t\t.then(goToLogin);\n\t});\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport {\n\tCreateTagRequest,\n\tCreateTagResponse,\n\tTagActionRequest,\n\tTagActionResponse\n} from '../../types';\nimport { Tag } from '../../types/tags';\nimport { SHELL_APP_ID } from '../constants';\nimport { getSoapFetch } from './fetch';\n\nexport const createTag = (tag: Omit<Tag, 'id'>): Promise<CreateTagResponse> =>\n\tgetSoapFetch(SHELL_APP_ID)<CreateTagRequest, CreateTagResponse>('CreateTag', {\n\t\t_jsns: 'urn:zimbraMail',\n\t\ttag\n\t});\nexport const deleteTag = (id: string): Promise<TagActionResponse> =>\n\tgetSoapFetch(SHELL_APP_ID)<TagActionRequest, TagActionResponse>('TagAction', {\n\t\t_jsns: 'urn:zimbraMail',\n\t\taction: { op: 'delete', id }\n\t});\n\nexport const renameTag = (id: string, name: string): Promise<TagActionResponse> =>\n\tgetSoapFetch(SHELL_APP_ID)<TagActionRequest, TagActionResponse>('TagAction', {\n\t\t_jsns: 'urn:zimbraMail',\n\t\taction: { op: 'rename', id, name }\n\t});\n\nexport const changeTagColor = (id: string, color: string | number): Promise<TagActionResponse> =>\n\tgetSoapFetch(SHELL_APP_ID)<TagActionRequest, TagActionResponse>('TagAction', {\n\t\t_jsns: 'urn:zimbraMail',\n\t\taction: typeof color === 'number' ? { op: 'color', color, id } : { op: 'color', rgb: color, id }\n\t});\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport UAParser from 'ua-parser-js';\n\nconst { os, browser } = UAParser();\nexport const userAgent = `CarbonioWebClient - ${browser.name} ${browser.version} (${os.name})`;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { debounce, noop } from 'lodash';\nimport {\n\tNotificationConfig,\n\tPopupNotificationConfig,\n\tAudioNotificationConfig,\n\tINotificationManager\n} from '../../types/notification';\nimport defaultAudio from '../../assets/notification.mp3';\nimport defaultIcon from '../../assets/carbonio-logo.png';\n\nconst PopupNotificationDefaultConfig = {\n\ttitle: 'Carbonio client',\n\ticon: defaultIcon,\n\tvibrate: [200, 100, 200]\n};\n\nconst AudioNotificationDefaultConfig = {\n\tsound: defaultAudio\n};\n\nconst NotificationDefaultConfig: NotificationConfig = {\n\t...PopupNotificationDefaultConfig,\n\t...AudioNotificationDefaultConfig,\n\tshowPopup: true,\n\tplaySound: false\n};\n\n/**\n * The main goals of the NotificationManager are:\n * - to provide a single and rich implementation for all the Carbonio modules,\n * reducing the boilerplate code needed to send a notification to the user\n * - to optimize the audio notifications avoiding to spam the same sound file\n * in a short period of time\n * - to act as a collector for all the notification (for possible future\n * implementations)\n *\n * In order to reduce the effort needed to send a notification the class\n * provided a set of default values/assets (e.g. icon, sound, title, ...)\n *\n * The class is provided as a singleton\n */\nexport class NotificationManager implements INotificationManager {\n\tprivate static instance: NotificationManager;\n\n\t/**\n\t * Minimum time (ms) to wait before the same audio file will be played\n\t * @private\n\t */\n\tprivate static DEBOUNCE_TIME = 1000;\n\n\t/**\n\t * Map of functions to play a specific audio file\n\t * @private\n\t */\n\tprivate functions = new Map<string, () => void>();\n\n\t/**\n\t * Gets or creates the (debounced) function to play the audio file\n\t * @param sound - relative path to the audio file to play\n\t */\n\tprivate getAudioFileFunction = (sound: string): (() => void) => {\n\t\tif (!this.functions.has(sound)) {\n\t\t\tthis.functions.set(\n\t\t\t\tsound,\n\t\t\t\tdebounce(() => {\n\t\t\t\t\tnew Audio(sound).play().then();\n\t\t\t\t\tthis.functions.delete(sound);\n\t\t\t\t}, NotificationManager.DEBOUNCE_TIME)\n\t\t\t);\n\t\t}\n\t\tconst result = this.functions.get(sound);\n\t\treturn result ?? noop;\n\t};\n\n\t/**\n\t * Executes the debounced function to play the audio file\n\t * @param config - Configuration for the audio notification. In case of\n\t * missing properties default values are used\n\t */\n\tpublic playSound = (config: AudioNotificationConfig): void => {\n\t\tconst defConfig = {\n\t\t\t...AudioNotificationDefaultConfig,\n\t\t\t...config\n\t\t};\n\t\tif (!defConfig.sound) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.getAudioFileFunction(defConfig.sound)();\n\t};\n\n\t/**\n\t * Shows a popup notification\n\t * @param config - Configuration for the popup notification. In case of\n\t * missing properties default values are used\n\t */\n\tpublic showPopup = (config: PopupNotificationConfig): void => {\n\t\tconst defConfig = {\n\t\t\t...PopupNotificationDefaultConfig,\n\t\t\t...config\n\t\t};\n\n\t\tconst n = new Notification(defConfig.title, {\n\t\t\tbody: defConfig.message,\n\t\t\tvibrate: defConfig.vibrate,\n\t\t\ticon: defConfig.icon,\n\t\t\ttag: defConfig?.tag\n\t\t});\n\n\t\tif (defConfig.onClick) {\n\t\t\tn.addEventListener('click', defConfig.onClick);\n\t\t}\n\t};\n\n\t/**\n\t * Sends a popup/audio notification to the user\n\t * @param config - Configuration for the notification. In case of\n\t * missing properties default values are used\n\t */\n\tpublic notify = (config: NotificationConfig): void => {\n\t\tconst defConfig = {\n\t\t\t...NotificationDefaultConfig,\n\t\t\t...config\n\t\t};\n\n\t\tif (defConfig?.showPopup) {\n\t\t\tthis.showPopup(defConfig);\n\t\t}\n\n\t\tif (defConfig?.playSound) {\n\t\t\tthis.playSound(defConfig);\n\t\t}\n\t};\n\n\t/**\n\t * Sends multiple notifications\n\t * @param config - Array of configurations for the notifications. In case of\n\t * missing properties default values are used\n\t */\n\tpublic multipleNotify = (config: NotificationConfig[]): void => {\n\t\tconfig.forEach((conf) => this.notify(conf));\n\t};\n\n\t/**\n\t * Return the singleton instance\n\t */\n\tpublic static getInstance(): NotificationManager {\n\t\tif (!NotificationManager.instance) {\n\t\t\tNotificationManager.instance = new NotificationManager();\n\t\t}\n\n\t\treturn NotificationManager.instance;\n\t}\n}\n\nexport const getNotificationManager = (): INotificationManager => NotificationManager.getInstance();\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC, ReactElement, useEffect } from 'react';\n\nexport const NotificationPermissionChecker: FC = (): ReactElement => {\n\tuseEffect(() => {\n\t\tif (!('Notification' in window)) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn('This browser does not support desktop notifications');\n\t\t} else {\n\t\t\tNotification.requestPermission();\n\t\t}\n\t}, []);\n\n\treturn <></>;\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, {\n\tuseEffect,\n\tuseState,\n\tuseCallback,\n\tuseReducer,\n\tuseMemo,\n\tFC,\n\tuseContext\n} from 'react';\nimport {\n\tText,\n\tButtonOld as Button,\n\tSelect,\n\tContainer,\n\tRow,\n\tIcon,\n\tSnackbarManagerContext,\n\tContainerProps,\n\tSelectItem\n} from '@zextras/carbonio-design-system';\nimport { Severity, Event } from '@sentry/browser';\nimport { filter, find, map } from 'lodash';\nimport styled from 'styled-components';\nimport { TFunction, useTranslation } from 'react-i18next';\nimport { useUserAccount } from '../store/account';\nimport { feedback } from './functions';\nimport { useAppList } from '../store/app';\nimport { closeBoard } from '../store/boards';\n\nconst TextArea = styled.textarea<{ size?: string }>`\n\twidth: 100%;\n\tmin-height: 128px;\n\tbox-sizing: border-box;\n\toutline: none;\n\tborder: none;\n\tbackground: ${({ theme }): string => theme.palette.gray5.regular};\n\tresize: none;\n\ttransition: height 0.4s ease;\n\tcolor: ${({ theme }): string => theme.palette.text.regular};\n\tfont-family: ${({ theme }): string => theme.fonts.default};\n\tfont-size: ${({ theme, size }): string => theme.sizes.font[size ?? 'medium']};\n\t&:focus {\n\t\tbackground: ${({ theme }): string => theme.palette.gray4.regular};\n\t\toutline: none;\n\t}\n`;\n\nconst TextContainer = styled(Container)`\n\ttext-align: justify;\n\talign-items: flex-start;\n\twidth: 80%;\n`;\n\nconst ButtonContainer = styled(Container)`\n\twidth: 20%;\n\tposition: relative;\n`;\n\nconst TAContainer = styled(Container)`\n\tbackground: ${({ theme }): string => theme.palette.gray5.regular};\n\tborder-radius: 2px 2px 0 0;\n\tpadding: 8px;\n\ttransition: height 0.4s ease;\n\theight: auto;\n\tmax-height: 50%;\n\t&:focus-within {\n\t\tbackground: ${({ theme }): string => theme.palette.gray4.regular};\n\t\toutline: none;\n\t\tborder-bottom: 1px solid ${({ theme }): string => theme.palette.primary.regular};\n\t}\n`;\n\nconst SubHeadingText = styled(Text)<{ lineHeight?: string }>`\n\tborder-radius: 2px 2px 0 0;\n\tline-height: 21px;\n\tfont-size: 14px;\n\tfont-weight: 300;\n\tmargin-top: 10px;\n\tline-height: ${({ lineHeight }): string => lineHeight ?? 'normal'};\n`;\n\ninterface LabelContainerProps extends ContainerProps {\n\tdisabled: boolean;\n}\n\nconst LabelContainer = styled(Container)<LabelContainerProps>`\n\tborder-bottom: 1px solid\n\t\t${({ theme, disabled }): string =>\n\t\t\tdisabled ? theme.palette.error.regular : theme.palette.gray2.regular};\n`;\n\nconst emptyEvent: Event = {\n\tmessage: '',\n\tlevel: Severity.Info,\n\trelease: 'unknown',\n\textra: {\n\t\tapp: '0',\n\t\ttopic: '0'\n\t},\n\tuser: {}\n};\n\nfunction reducer(state: Event, { type, payload }: { type: string; payload: any }): Event {\n\tswitch (type) {\n\t\tcase 'set-user':\n\t\t\treturn { ...state, user: payload };\n\t\tcase 'reset':\n\t\t\treturn emptyEvent;\n\t\tcase 'set-message':\n\t\t\treturn { ...state, message: payload };\n\t\tcase 'select-app':\n\t\t\treturn {\n\t\t\t\t...state,\n\t\t\t\trelease: payload.version,\n\t\t\t\textra: { ...state.extra, app: payload.app }\n\t\t\t};\n\t\tcase 'select-topic':\n\t\t\treturn { ...state, extra: { ...state.extra, topic: payload } };\n\t\tdefault:\n\t\t\treturn state;\n\t}\n}\n\nconst getTopics = (t: TFunction): Array<{ label: string; value: string }> => [\n\t{ label: t('feedback.user_interface', 'User interface'), value: 'UserInterface' },\n\t{ label: t('feedback.behaviors', 'Behaviors'), value: 'Behaviors' },\n\t{ label: t('feedback.missing_features', 'Missing features'), value: 'MissingFeatures' },\n\t{ label: t('feedback.other', 'Other'), value: 'Other' }\n];\n\nconst ModuleLabelFactory: FC<{\n\tselected: Array<{ label: string; value: string }>;\n\tlabel?: string;\n\topen: boolean;\n\tfocus: boolean;\n\tdisabled: boolean;\n}> = ({ selected, label, open, focus, disabled }) => (\n\t<LabelContainer\n\t\torientation=\"horizontal\"\n\t\twidth=\"fill\"\n\t\tcrossAlignment=\"center\"\n\t\tmainAlignment=\"space-between\"\n\t\tborderRadius=\"half\"\n\t\tbackground=\"gray5\"\n\t\tpadding={{\n\t\t\tall: 'small'\n\t\t}}\n\t\tdisabled={disabled}\n\t>\n\t\t<Row takeAvailableSpace mainAlignment=\"unset\">\n\t\t\t<Text size=\"medium\" color={open || focus ? 'primary' : 'secondary'}>\n\t\t\t\t{selected.length > 0 ? selected[0].label : label}\n\t\t\t</Text>\n\t\t</Row>\n\t\t<Icon\n\t\t\tsize=\"large\"\n\t\t\ticon={open ? 'ChevronUpOutline' : 'ChevronDownOutline'}\n\t\t\tcolor={open || focus ? 'primary' : 'secondary'}\n\t\t\tstyle={{ alignSelf: 'center' }}\n\t\t/>\n\t</LabelContainer>\n);\n\nconst _LabelFactory: FC<{\n\tselected: Array<{ label: string; value: string }>;\n\tlabel: string;\n\topen: boolean;\n\tfocus: boolean;\n\tshowErr: boolean;\n}> = ({ selected, label, open, focus, showErr }) => (\n\t<LabelContainer\n\t\tdisabled={showErr}\n\t\torientation=\"horizontal\"\n\t\twidth=\"fill\"\n\t\tcrossAlignment=\"center\"\n\t\tmainAlignment=\"space-between\"\n\t\tborderRadius=\"half\"\n\t\tbackground=\"gray5\"\n\t\tpadding={{\n\t\t\tall: 'small'\n\t\t}}\n\t>\n\t\t<Row takeAvailableSpace mainAlignment=\"unset\">\n\t\t\t{showErr ? (\n\t\t\t\t<Text size=\"medium\" color={(open && showErr) || focus ? 'primary' : 'error'}>\n\t\t\t\t\t{' '}\n\t\t\t\t\t{selected.length > 0 ? selected[0].label : label}\n\t\t\t\t</Text>\n\t\t\t) : (\n\t\t\t\t<Text size=\"medium\" color={open || focus ? 'primary' : 'secondary'}>\n\t\t\t\t\t{selected.length > 0 ? selected[0].label : label}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</Row>\n\n\t\t{showErr ? (\n\t\t\t<Icon\n\t\t\t\tsize=\"large\"\n\t\t\t\ticon={open ? 'ChevronUpOutline' : 'ChevronDownOutline'}\n\t\t\t\tcolor={(open && showErr) || focus ? 'primary' : 'error'}\n\t\t\t\tstyle={{ alignSelf: 'center' }}\n\t\t\t/>\n\t\t) : (\n\t\t\t<Icon\n\t\t\t\tsize=\"large\"\n\t\t\t\ticon={open ? 'ChevronUpOutline' : 'ChevronDownOutline'}\n\t\t\t\tcolor={open || focus ? 'primary' : 'secondary'}\n\t\t\t\tstyle={{ alignSelf: 'center' }}\n\t\t\t/>\n\t\t)}\n\t</LabelContainer>\n);\n\nconst Feedback: FC = () => {\n\tconst [t] = useTranslation();\n\tconst topics = useMemo(() => getTopics(t), [t]);\n\tconst allApps = useAppList();\n\tconst apps = useMemo(\n\t\t() => filter(allApps, (app) => !!app.sentryDsn),\n\n\t\t[allApps]\n\t);\n\tconst appItems = useMemo(\n\t\t() =>\n\t\t\tmap(apps, (app) => ({\n\t\t\t\tlabel: app.display,\n\t\t\t\tvalue: app.name\n\t\t\t})),\n\t\t[apps]\n\t);\n\tconst acct = useUserAccount();\n\tconst [event, dispatch] = useReducer(reducer, emptyEvent);\n\tconst [showErr, setShowErr] = useState(false);\n\tconst [limit, setLimit] = useState(0);\n\n\tconst onAppSelect = useCallback(\n\t\t(ev) =>\n\t\t\tdispatch({\n\t\t\t\ttype: 'select-app',\n\t\t\t\tpayload: {\n\t\t\t\t\tapp: ev,\n\t\t\t\t\tversion: find(apps, ['name', ev])?.version\n\t\t\t\t}\n\t\t\t}),\n\t\t[apps]\n\t);\n\n\tconst onTopicSelect = useCallback((ev) => {\n\t\tsetShowErr(false);\n\t\tdispatch({ type: 'select-topic', payload: ev });\n\t}, []);\n\n\tconst onInputChange = useCallback((ev) => {\n\t\t// eslint-disable-next-line no-param-reassign\n\t\tev.target.style.height = 'auto';\n\t\t// eslint-disable-next-line no-param-reassign\n\t\tev.target.style.height = `${25 + ev.target.scrollHeight}px`;\n\t\tif (ev.target.value.length <= 500) {\n\t\t\tsetLimit(ev.target.value.length);\n\t\t\tdispatch({ type: 'set-message', payload: ev.target.value });\n\t\t}\n\t}, []);\n\n\tconst checkTopicSelect = useCallback(\n\t\t(ev) => {\n\t\t\tif (event.extra?.topic === '0') setShowErr(true);\n\t\t\telse setShowErr(false);\n\t\t\tif (ev.keyCode === 8) {\n\t\t\t\tif (event.message?.length === 0) {\n\t\t\t\t\tsetShowErr(false);\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[setShowErr, event]\n\t);\n\n\tconst createSnackbar = useContext(SnackbarManagerContext) as (snackbar: any) => void;\n\n\tconst confirmHandler = useCallback(() => {\n\t\tconst feedbackId = feedback(event);\n\t\tcreateSnackbar(\n\t\t\tfeedbackId\n\t\t\t\t? { type: 'success', label: t('feedback.success', 'Thank you for your feedback') }\n\t\t\t\t: {\n\t\t\t\t\t\ttype: 'error',\n\t\t\t\t\t\tlabel: t('feedback.error', 'There was an error while sending your feedback')\n\t\t\t\t }\n\t\t);\n\t\tcloseBoard('feedback');\n\t}, [event, createSnackbar, t]);\n\n\tuseEffect(() => {\n\t\tdispatch({\n\t\t\ttype: 'set-user',\n\t\t\tpayload: { id: acct.id, name: acct.displayName ?? acct.name }\n\t\t});\n\t}, [acct]);\n\n\tconst disabledSend = useMemo(\n\t\t() =>\n\t\t\t(event?.message?.length ?? 0) <= 0 || event.extra?.topic === '0' || event.extra?.app === '0',\n\t\t[event.message, event.extra?.topic, event.extra?.app]\n\t);\n\n\tconst LabelFactory = useCallback(\n\t\t(props) => <_LabelFactory {...props} showErr={showErr} />,\n\t\t[showErr]\n\t);\n\n\treturn (\n\t\t<Container padding={{ all: 'large' }} mainAlignment=\"space-around\">\n\t\t\t<Container orientation=\"horizontal\" height=\"fit\">\n\t\t\t\t<TextContainer mainAlignment=\"flex-start\" crossAlignment=\"flex-start\">\n\t\t\t\t\t<Text weight=\"bold\" size=\"large\">\n\t\t\t\t\t\t{t('feedback.report_something', 'Do you want to report something?')}\n\t\t\t\t\t</Text>\n\t\t\t\t\t<SubHeadingText overflow=\"break-word\" lineHeight=\"21px\">\n\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t'feedback.explanation',\n\t\t\t\t\t\t\t'Please send us your feedback about your new experience with Zextras Server. Your opinion is meaningful for us to improve our product. So tell us what’s on your mind.'\n\t\t\t\t\t\t)}\n\t\t\t\t\t</SubHeadingText>\n\t\t\t\t\t<SubHeadingText overflow=\"break-word\">\n\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t'feedback.hint',\n\t\t\t\t\t\t\t'Remember: define the topic using module and macro area selectors before write your feedback. Thanks for your help.'\n\t\t\t\t\t\t)}\n\t\t\t\t\t</SubHeadingText>\n\t\t\t\t</TextContainer>\n\n\t\t\t\t<ButtonContainer crossAlignment=\"flex-end\" mainAlignment=\"baseline\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tlabel={t('feedback.send', 'SEND')}\n\t\t\t\t\t\tonClick={confirmHandler}\n\t\t\t\t\t\tdisabled={disabledSend}\n\t\t\t\t\t/>\n\t\t\t\t</ButtonContainer>\n\t\t\t</Container>\n\t\t\t<Container\n\t\t\t\tpadding={{ bottom: 'medium' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tmainAlignment=\"space-between\"\n\t\t\t\tcrossAlignment=\"flex-start\"\n\t\t\t\torientation=\"horizontal\"\n\t\t\t>\n\t\t\t\t<Container mainAlignment=\"space-between\" crossAlignment=\"flex-start\" maxWidth=\"305px\">\n\t\t\t\t\t<Row padding={{ vertical: 'large' }}>\n\t\t\t\t\t\t<Text weight=\"bold\" size=\"small\">\n\t\t\t\t\t\t\tModule\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Row>\n\t\t\t\t\t<Select\n\t\t\t\t\t\tlabel={t('feedback.select_a_module', 'Select a module')}\n\t\t\t\t\t\titems={appItems}\n\t\t\t\t\t\tdefaultSelection={{ label: '', value: '' }}\n\t\t\t\t\t\tonChange={onAppSelect}\n\t\t\t\t\t\tLabelFactory={ModuleLabelFactory}\n\t\t\t\t\t/>\n\t\t\t\t</Container>\n\t\t\t\t<Container mainAlignment=\"space-between\" crossAlignment=\"flex-start\" maxWidth=\"305px\">\n\t\t\t\t\t<Row padding={{ vertical: 'large' }}>\n\t\t\t\t\t\t<Text weight=\"bold\" size=\"small\">\n\t\t\t\t\t\t\tTopic\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Row>\n\t\t\t\t\t<Select\n\t\t\t\t\t\tlabel={t('feedback.select_a_topic', 'Select a topic')}\n\t\t\t\t\t\titems={topics}\n\t\t\t\t\t\tdefaultSelection={\n\t\t\t\t\t\t\tfind(topics, ['value', event.extra?.topic]) ?? { label: '', value: '' }\n\t\t\t\t\t\t}\n\t\t\t\t\t\tonChange={onTopicSelect}\n\t\t\t\t\t\tLabelFactory={LabelFactory}\n\t\t\t\t\t\tmultiple={false}\n\t\t\t\t\t/>\n\t\t\t\t</Container>\n\t\t\t</Container>\n\t\t\t<TAContainer crossAlignment=\"flex-end\">\n\t\t\t\t<TextArea\n\t\t\t\t\tvalue={event.message}\n\t\t\t\t\tonKeyUp={checkTopicSelect}\n\t\t\t\t\tonChange={onInputChange}\n\t\t\t\t\tplaceholder={t('feedback.write_here', 'Write your feedback here')}\n\t\t\t\t/>\n\t\t\t\t<Text size=\"medium\" color=\"secondary\">\n\t\t\t\t\t{limit}/500\n\t\t\t\t</Text>\n\t\t\t</TAContainer>\n\t\t</Container>\n\t);\n};\n\nexport default Feedback;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport { Event, EventHint, Severity } from '@sentry/browser';\nimport { useReporter } from './store';\n\nexport const report =\n\t(appId: string) =>\n\t(error: Event, hint?: EventHint): string => {\n\t\tconst reporter = useReporter.getState();\n\t\tconst eventId = reporter.clients[appId]?.captureException(error, { ...hint });\n\t\tif (eventId) {\n\t\t\tconsole.info('Reported event ', eventId);\n\t\t}\n\t\treturn eventId;\n\t};\n\nexport const feedback = (message: Event): string => {\n\tconst reporter = useReporter.getState();\n\tconst eventId = reporter.clients.feedbacks.captureEvent({ ...message, level: Severity.Info });\n\tif (eventId) {\n\t\tconsole.info('Feedback ', eventId, ' sent, Thank you');\n\t}\n\treturn eventId;\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nexport * from './store';\nexport * from './functions';\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport create, { StoreApi, UseBoundStore } from 'zustand';\nimport { BrowserClient, Hub } from '@sentry/browser';\nimport { reduce } from 'lodash';\nimport { CarbonioModule, SHELL_APP_ID } from '../../types';\n\ntype ReporterState = {\n\tclients: Record<string, Hub>;\n\tsetClients: (apps: Array<CarbonioModule>) => void;\n};\n\nexport const useReporter = create<ReporterState>((set) => ({\n\tclients: {\n\t\t[SHELL_APP_ID]: new Hub(\n\t\t\tnew BrowserClient({\n\t\t\t\tdsn: 'https://0ce2448c05b94f0182c47ae52c7ff52c@feedback.zextras.tools/6',\n\t\t\t\trelease: '0',\n\t\t\t\tmaxValueLength: 500\n\t\t\t})\n\t\t),\n\t\tfeedbacks: new Hub(\n\t\t\tnew BrowserClient({\n\t\t\t\tdsn: 'https://1b6b3e2bbdc64a73bf45c72b725c56b4@feedback.zextras.tools/8',\n\t\t\t\trelease: '0',\n\t\t\t\tmaxValueLength: 500\n\t\t\t})\n\t\t)\n\t},\n\tsetClients: (apps): void => {\n\t\tset((s) => ({\n\t\t\tclients: reduce(\n\t\t\t\tapps,\n\t\t\t\t(acc, app) => {\n\t\t\t\t\tif (app.sentryDsn) {\n\t\t\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\t\t\ts.clients[app.name] = new Hub(\n\t\t\t\t\t\t\tnew BrowserClient({\n\t\t\t\t\t\t\t\tdsn: app.sentryDsn,\n\t\t\t\t\t\t\t\trelease: app.version,\n\t\t\t\t\t\t\t\tmaxValueLength: 500\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\treturn acc;\n\t\t\t\t},\n\t\t\t\ts.clients\n\t\t\t)\n\t\t}));\n\t}\n})) as UseBoundStore<ReporterState, StoreApi<ReporterState>>;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC, useEffect, useMemo, useState } from 'react';\nimport styled from 'styled-components';\nimport { Container, Row, Text, Icon, Dropdown } from '@zextras/carbonio-design-system';\nimport { useAppStore } from '../store/app';\nimport { useSearchStore } from './search-store';\nimport { SEARCH_APP_ID } from '../constants';\nimport { useCurrentRoute, pushHistory } from '../history/hooks';\n\nconst SelectorContainer = styled(Container)<{ open?: boolean }>`\n\tborder-right: 1px solid ${({ theme }): string => theme.palette.gray4.regular};\n\tcursor: pointer;\n\tbackground: ${({ theme, open }): string => theme.palette[open ? 'gray5' : 'gray6'].regular};\n\n\t&:hover {\n\t\tbackground: ${({ theme, open }): string => theme.palette[open ? 'gray5' : 'gray6'].hover};\n\t}\n`;\n\nconst ModuleSelectorComponent: FC<{ app: string | undefined }> = ({ app }) => {\n\tconst modules = useAppStore((s) => s.views.search);\n\tconst { module, updateModule } = useSearchStore();\n\tconst fullModule = useMemo(\n\t\t() => modules.find((m) => m.route === module) ?? modules[0],\n\t\t[module, modules]\n\t);\n\n\tconst [open, setOpen] = useState(false);\n\n\tconst dropdownItems = useMemo(\n\t\t() =>\n\t\t\tmodules.map(({ id, label, icon, route }) => ({\n\t\t\t\tid,\n\t\t\t\tlabel,\n\t\t\t\ticon,\n\t\t\t\tactive: id === module,\n\t\t\t\tclick: (): void => {\n\t\t\t\t\tupdateModule(route);\n\t\t\t\t\tpushHistory({ route: SEARCH_APP_ID, path: `/${route}` });\n\t\t\t\t}\n\t\t\t})),\n\t\t[module, modules, updateModule]\n\t);\n\n\tuseEffect(() => {\n\t\tif (app !== SEARCH_APP_ID) {\n\t\t\tif (!fullModule || fullModule?.app !== app) {\n\t\t\t\tupdateModule((modules.find((m) => m.app === app) ?? modules[0])?.route);\n\t\t\t}\n\t\t}\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [app, modules, updateModule]);\n\n\tif (!fullModule) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<Dropdown\n\t\t\titems={dropdownItems}\n\t\t\tonOpen={(): void => setOpen(true)}\n\t\t\tonClose={(): void => setOpen(false)}\n\t\t>\n\t\t\t<SelectorContainer\n\t\t\t\torientation=\"horizontal\"\n\t\t\t\theight={42}\n\t\t\t\twidth=\"fit\"\n\t\t\t\tminWidth={150}\n\t\t\t\tcrossAlignment=\"center\"\n\t\t\t\tmainAlignment=\"space-between\"\n\t\t\t\tborderRadius=\"half\"\n\t\t\t>\n\t\t\t\t<Row takeAvailableSpace mainAlignment=\"unset\" padding={{ left: 'small' }}>\n\t\t\t\t\t<Text size=\"small\" color={open ? 'primary' : 'text'}>\n\t\t\t\t\t\t{fullModule?.label}\n\t\t\t\t\t</Text>\n\t\t\t\t</Row>\n\t\t\t\t<Icon\n\t\t\t\t\tsize=\"large\"\n\t\t\t\t\ticon={open ? 'ChevronUpOutline' : 'ChevronDownOutline'}\n\t\t\t\t\tcolor={open ? 'primary' : 'text'}\n\t\t\t\t\tstyle={{ alignSelf: 'center' }}\n\t\t\t\t/>\n\t\t\t</SelectorContainer>\n\t\t</Dropdown>\n\t);\n};\n\nconst MemoModuleSelector = React.memo(ModuleSelectorComponent);\n\nexport const ModuleSelector = (): JSX.Element => {\n\tconst activeRoute = useCurrentRoute();\n\treturn <MemoModuleSelector app={activeRoute?.app} />;\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport { QueryChip } from '../../types';\nimport { SEARCH_APP_ID } from '../constants';\nimport { pushHistory } from '../history/hooks';\nimport { useSearchStore } from './search-store';\n\nexport const runSearch = (query: Array<QueryChip>, module: string): void => {\n\tuseSearchStore.setState({ query, module, searchDisabled: false });\n\tpushHistory({ route: SEARCH_APP_ID, path: `/${module}` });\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { map } from 'lodash';\nimport React, { FC, ReactElement, useCallback, useMemo } from 'react';\nimport {\n\tButton,\n\tChip,\n\tContainer,\n\tDivider,\n\tIcon,\n\tPadding,\n\tText\n} from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport AppContextProvider from '../boot/app/app-context-provider';\nimport { useSearchStore } from './search-store';\nimport { QueryChip, ResultLabelType } from '../../types';\nimport { useAppStore } from '../store/app';\nimport { SEARCH_APP_ID } from '../constants';\n// import { RouteLeavingGuard } from '../ui-extras/nav-guard';\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst useQuery = (): [Array<QueryChip>, Function] =>\n\tuseSearchStore((s) => [s.query, s.updateQuery]);\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst useDisableSearch = (): [boolean, Function] =>\n\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\tuseSearchStore((s) => [s.searchDisabled, s.setSearchDisabled]);\n\nconst getIconAndColor = (labelType: ResultLabelType): Array<string> => {\n\tif (labelType === ResultLabelType.WARNING) {\n\t\treturn ['AlertTriangle', 'warning'];\n\t}\n\tif (labelType === ResultLabelType.ERROR) {\n\t\treturn ['CloseSquare', 'error'];\n\t}\n\treturn ['', ''];\n};\n\nconst ResultsHeader: FC<{ label: string; labelType?: ResultLabelType }> = ({\n\tlabel,\n\tlabelType = ResultLabelType.NORMAL\n}) => {\n\tconst [t] = useTranslation();\n\tconst [query, updateQuery] = useQuery();\n\tconst [, setDisabled] = useDisableSearch();\n\n\tconst resetQuery = useCallback(() => {\n\t\tupdateQuery([]);\n\t\tsetDisabled(false);\n\t}, [updateQuery, setDisabled]);\n\n\tconst labelTypeElem = useMemo<ReactElement | undefined>(() => {\n\t\tif (labelType === ResultLabelType.NORMAL) {\n\t\t\treturn <></>;\n\t\t}\n\n\t\tconst [icon, color] = getIconAndColor(labelType);\n\t\treturn (\n\t\t\t<Padding right=\"small\">\n\t\t\t\t<Icon icon={icon} size=\"large\" color={color} />\n\t\t\t</Padding>\n\t\t);\n\t}, [labelType]);\n\n\treturn (\n\t\t<>\n\t\t\t<Container\n\t\t\t\torientation=\"horizontal\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\twidth=\"100%\"\n\t\t\t\tbackground=\"gray5\"\n\t\t\t\theight=\"fit\"\n\t\t\t\tminHeight=\"48px\"\n\t\t\t\tmaxHeight=\"120px\"\n\t\t\t\tstyle={{ overflow: 'hidden' }}\n\t\t\t\tpadding={{ horizontal: 'large', vertical: 'medium' }}\n\t\t\t>\n\t\t\t\t<Container width=\"85%\" orientation=\"horizontal\" wrap=\"wrap\" mainAlignment=\"flex-start\">\n\t\t\t\t\t{labelTypeElem}\n\t\t\t\t\t<Text color=\"secondary\">{label}</Text>\n\n\t\t\t\t\t{map(query, (q, i) => (\n\t\t\t\t\t\t<Padding key={`${i}${q.label}`} all=\"extrasmall\">\n\t\t\t\t\t\t\t<Chip {...q} background=\"gray2\" />\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t))}\n\t\t\t\t</Container>\n\t\t\t\t{query?.length > 0 && (\n\t\t\t\t\t<Container width=\"15%\" mainAlignment=\"flex-start\" crossAlignment=\"flex-start\">\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tlabel={t('label.clear_search_query', 'CLEAR SEARCH')}\n\t\t\t\t\t\t\ticon=\"CloseOutline\"\n\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\twidth=\"fill\"\n\t\t\t\t\t\t\ttype=\"ghost\"\n\t\t\t\t\t\t\tonClick={resetQuery}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Container>\n\t\t\t\t)}\n\t\t\t</Container>\n\t\t\t<Divider color=\"gray3\" />\n\t\t</>\n\t);\n};\n\nexport const SearchAppView: FC = () => {\n\tconst searchViews = useAppStore((s) => s.views.search);\n\tconst routes = useMemo(\n\t\t() =>\n\t\t\tmap(searchViews, (view) => (\n\t\t\t\t<Route key={`/${view.route}`} path={`/${SEARCH_APP_ID}/${view.route}`}>\n\t\t\t\t\t<AppContextProvider pkg={view.app}>\n\t\t\t\t\t\t<view.component\n\t\t\t\t\t\t\tuseQuery={useQuery}\n\t\t\t\t\t\t\tResultsHeader={ResultsHeader}\n\t\t\t\t\t\t\tuseDisableSearch={useDisableSearch}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</AppContextProvider>\n\t\t\t\t</Route>\n\t\t\t)),\n\t\t[searchViews]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{/* <RouteLeavingGuard\n\t\t\t\twhen\n\t\t\t\ttitle={t('search.leave.title', 'Are you sure you want to leave this module?')}\n\t\t\t>\n\t\t\t\t<Text>{t('search.leave.warning', 'The current search results will be lost')}</Text>\n\t\t\t</RouteLeavingGuard> */}\n\t\t\t<Switch>\n\t\t\t\t{routes}\n\t\t\t\t<Redirect\n\t\t\t\t\texact\n\t\t\t\t\tstrict\n\t\t\t\t\tfrom={`/${SEARCH_APP_ID}`}\n\t\t\t\t\tto={`/${SEARCH_APP_ID}/${searchViews[0]?.route}`}\n\t\t\t\t/>\n\t\t\t</Switch>\n\t\t</>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable @typescript-eslint/ban-ts-comment */\n\nimport React, { useState, useCallback, useEffect, useMemo, FC, useRef } from 'react';\nimport {\n\tChipInput,\n\tContainer,\n\tIconButton,\n\tTooltip,\n\tPadding,\n\tChipItem\n} from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { filter, find, map, reduce } from 'lodash';\nimport styled from 'styled-components';\nimport { useHistory } from 'react-router-dom';\nimport { useLocalStorage } from '../shell/hooks';\nimport { SEARCH_APP_ID } from '../constants';\n\nimport { useSearchStore } from './search-store';\nimport { QueryChip } from '../../types';\nimport { ModuleSelector } from './module-selector';\n\nconst OutlinedIconButton = styled(IconButton)`\n\tborder: 1px solid\n\t\t${({ theme, disabled }): string =>\n\t\t\tdisabled ? theme.palette.primary.disabled : theme.palette.primary.regular};\n\tdisplay: block;\n\t& svg {\n\t\tborder: none;\n\t}\n`;\n\nconst StyledChipInput = styled(ChipInput)`\n\tpadding: 0 16px;\n\t&:hover {\n\t\toutline: none;\n\t\tbackground: ${({ theme, disabled }): string =>\n\t\t\tdisabled ? 'gray5' : theme.palette.gray5.hover};\n\t}\n`;\n\nconst StyledContainer = styled(Container)`\n\theight: 42px;\n\toverflow-y: hidden;\n\t&:first-child {\n\t\ttransform: translateY(-2px);\n\t}\n`;\n\ntype SearchLocalStorage = Array<{\n\tvalue: string;\n\tlabel: string;\n\ticon: string;\n\tapp: string;\n\tid: string;\n}>;\nexport const SearchBar: FC = () => {\n\tconst [searchIsEnabled, setSearchIsEnabled] = useState(false);\n\tconst inputRef = useRef<HTMLInputElement>(null);\n\tconst [t] = useTranslation();\n\tconst [storedValue, setStoredValue] = useLocalStorage<SearchLocalStorage>(\n\t\t'search_suggestions',\n\t\t[]\n\t);\n\tconst [inputTyped, setInputTyped] = useState('');\n\tconst history = useHistory();\n\tconst { updateQuery, module, query, searchDisabled, setSearchDisabled, tooltip } =\n\t\tuseSearchStore();\n\t// const [moduleSelection, setModuleSelection] = useState<{\n\t// \tvalue: string;\n\t// \tlabel: string;\n\t// }>();\n\tconst [isTyping, setIsTyping] = useState(false);\n\t// const [changedBySearchBar, setChangedBySearchBar] = useState(false);\n\n\tconst [options, setOptions] = useState<Array<{ id: string; label: string; hasAvatar: false }>>(\n\t\t[]\n\t);\n\n\tconst [inputHasFocus, setInputHasFocus] = useState(false);\n\n\tconst [inputState, setInputState] = useState(query);\n\tconst showClear = useMemo(\n\t\t() =>\n\t\t\tinputState.length > 0 ||\n\t\t\t(inputRef.current?.textContent && inputRef.current?.textContent?.length > 0),\n\t\t[inputState.length]\n\t);\n\tconst clearSearch = useCallback((): void => {\n\t\tif (inputRef.current) {\n\t\t\tinputRef.current.innerText = '';\n\t\t\tinputRef.current?.focus();\n\t\t}\n\t\tsetIsTyping(false);\n\t\tsetInputState([]);\n\t\tsetSearchDisabled(false);\n\t\tupdateQuery([]);\n\t\tsetInputTyped('');\n\t}, [setSearchDisabled, updateQuery]);\n\n\tconst onSearch = useCallback(() => {\n\t\tupdateQuery((currentQuery) => {\n\t\t\tconst ref = inputRef?.current;\n\t\t\tif (ref) ref.innerText = '';\n\t\t\tif (inputTyped.length > 0) {\n\t\t\t\tconst newInputState = [\n\t\t\t\t\t...inputState,\n\t\t\t\t\t...map(inputTyped?.split(' '), (label: string, id: number) => ({\n\t\t\t\t\t\tid: `${id}`,\n\t\t\t\t\t\tlabel,\n\t\t\t\t\t\thasAvatar: false\n\t\t\t\t\t}))\n\t\t\t\t];\n\t\t\t\tsetInputState(newInputState);\n\t\t\t\tsetInputTyped('');\n\t\t\t\treturn reduce(\n\t\t\t\t\tnewInputState,\n\t\t\t\t\t(acc, chip) => {\n\t\t\t\t\t\tif (!find(currentQuery, (c: QueryChip): boolean => c.label === chip.label)) {\n\t\t\t\t\t\t\tacc.push(chip);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t},\n\t\t\t\t\tfilter(\n\t\t\t\t\t\tcurrentQuery,\n\t\t\t\t\t\t(qchip: QueryChip): boolean =>\n\t\t\t\t\t\t\t!!find(inputState, (c: QueryChip): boolean => c.label === qchip.label)\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tsetInputTyped('');\n\n\t\t\treturn reduce(\n\t\t\t\tinputState,\n\t\t\t\t(acc, chip) => {\n\t\t\t\t\tif (!find(currentQuery, (c: QueryChip): boolean => c.label === chip.label)) {\n\t\t\t\t\t\tacc.push(chip);\n\t\t\t\t\t}\n\t\t\t\t\treturn acc;\n\t\t\t\t},\n\n\t\t\t\tfilter(\n\t\t\t\t\tcurrentQuery,\n\t\t\t\t\t(qchip: QueryChip): boolean =>\n\t\t\t\t\t\t!!find(inputState, (c: QueryChip): boolean => c.label === qchip.label)\n\t\t\t\t)\n\t\t\t);\n\t\t});\n\t\t// if (activeRoute?.app !== SEARCH_APP_ID) {\n\t\thistory.push(`/${SEARCH_APP_ID}/${module}`);\n\t\t// }\n\t\tsetSearchIsEnabled(false);\n\t\t// setChangedBySearchBar(true);\n\t}, [updateQuery, history, module, inputTyped, inputState]);\n\n\tconst appSuggestions = useMemo<Array<QueryChip & { hasAvatar: false }>>(\n\t\t() =>\n\t\t\tfilter(storedValue, (v) => v.app === module)\n\t\t\t\t.reverse()\n\t\t\t\t.map((item: QueryChip) => ({\n\t\t\t\t\t...item,\n\t\t\t\t\thasAvatar: false,\n\t\t\t\t\tdisabled: searchDisabled,\n\t\t\t\t\tclick: (): void => {\n\t\t\t\t\t\tsetInputState((q: Array<QueryChip>) => [...q, { ...item, hasAvatar: false }]);\n\t\t\t\t\t}\n\t\t\t\t})),\n\t\t[storedValue, module, searchDisabled]\n\t);\n\n\tconst updateOptions = useCallback(\n\t\t(target: HTMLInputElement, q: Array<any>): void => {\n\t\t\tif (target.textContent && target.textContent.length > 0) {\n\t\t\t\tsetOptions(\n\t\t\t\t\tappSuggestions\n\t\t\t\t\t\t.filter(\n\t\t\t\t\t\t\t(v: QueryChip): boolean =>\n\t\t\t\t\t\t\t\tv.label?.indexOf(target.textContent as string) !== -1 &&\n\t\t\t\t\t\t\t\t!find(q, (i) => i.value === v.label)\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.slice(0, 5)\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tsetOptions(appSuggestions.slice(0, 5));\n\t\t\t}\n\t\t},\n\t\t[appSuggestions]\n\t);\n\n\tconst onQueryChange = useCallback(\n\t\t(newQuery) => {\n\t\t\tif (\n\t\t\t\tnewQuery[newQuery.length - 1]?.label &&\n\t\t\t\tmodule &&\n\t\t\t\t!find(appSuggestions, (v) => v.label === newQuery[newQuery.length - 1]?.label)\n\t\t\t) {\n\t\t\t\tsetStoredValue((value) => [\n\t\t\t\t\t...value,\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: newQuery[newQuery.length - 1].label,\n\t\t\t\t\t\tlabel: newQuery[newQuery.length - 1].label,\n\t\t\t\t\t\ticon: 'ClockOutline',\n\t\t\t\t\t\tapp: module,\n\t\t\t\t\t\tid: `${value.length}`,\n\t\t\t\t\t\thasAvatar: false\n\t\t\t\t\t}\n\t\t\t\t]);\n\t\t\t}\n\t\t\t/** Commented for future reference */\n\t\t\t// if (inputRef.current) {\n\t\t\t// \tupdateOptions(inputRef.current, newQuery);\n\t\t\t// }\n\t\t\tsetInputState(newQuery);\n\t\t\tsetSearchIsEnabled(true);\n\t\t},\n\t\t[appSuggestions, module, setStoredValue]\n\t);\n\n\tconst onInputType = useCallback(\n\t\t(ev) => {\n\t\t\tif (ev.target.textContent === '') {\n\t\t\t\tsetIsTyping(false);\n\t\t\t} else if (!isTyping) {\n\t\t\t\tsetIsTyping(true);\n\t\t\t}\n\t\t\tsetInputTyped(ev.target.textContent);\n\t\t\tupdateOptions(ev.target, query);\n\t\t},\n\t\t[query, updateOptions, isTyping]\n\t);\n\n\tuseEffect(() => {\n\t\tif (module) {\n\t\t\tconst suggestions = filter(appSuggestions, (suggestion) => suggestion?.app === module).slice(\n\t\t\t\t0,\n\t\t\t\t5\n\t\t\t);\n\n\t\t\tsetOptions(suggestions);\n\t\t}\n\t}, [appSuggestions, module]);\n\n\tconst [triggerSearch, setTriggerSearch] = useState(false);\n\tconst containerRef = useRef<HTMLDivElement>(null);\n\tconst addFocus = useCallback(() => setInputHasFocus(true), []);\n\tconst removeFocus = useCallback(() => setInputHasFocus(false), []);\n\n\t// useEffect(() => {\n\t// \tconst handler = (event: KeyboardEvent): unknown =>\n\t// \t\thandleKeyboardShortcuts({\n\t// \t\t\tevent,\n\t// \t\t\tinputRef,\n\t// \t\t\tprimaryAction,\n\t// \t\t\tsecondaryActions,\n\t// \t\t\tcurrentApp\n\t// \t\t});\n\t// \tdocument.addEventListener('keydown', handler);\n\t// \treturn (): void => {\n\t// \t\tdocument.removeEventListener('keydown', handler);\n\t// \t};\n\t// }, [currentApp, inputRef, primaryAction, secondaryActions]);\n\n\tuseEffect(() => {\n\t\tconst ref = inputRef.current;\n\t\tconst searchCb = (ev: any): void => {\n\t\t\tif (ev.key === 'Enter') {\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tsetTriggerSearch(true);\n\t\t\t\t\tremoveFocus();\n\t\t\t\t}, 0);\n\t\t\t}\n\t\t};\n\t\tif (ref) {\n\t\t\tref.addEventListener('keyup', searchCb);\n\t\t}\n\t\treturn (): void => {\n\t\t\tif (ref) {\n\t\t\t\tref.removeEventListener('keyup', searchCb);\n\t\t\t}\n\t\t};\n\t}, [onSearch, removeFocus]);\n\n\tuseEffect(() => {\n\t\tif (triggerSearch) {\n\t\t\tonSearch();\n\t\t\tsetTriggerSearch(false);\n\t\t}\n\t}, [onSearch, triggerSearch]);\n\n\t// useEffect(() => {\n\t// \tsetChangedBySearchBar((value) => {\n\t// \t\tif (!value) {\n\t// \t\t\tsetInputState(filter(query, (q) => !q.isQueryFilter));\n\t// \t\t}\n\t// \t\treturn false;\n\t// \t});\n\t// }, [query]);\n\n\tconst disableOptions = useMemo(() => !(options.length > 0) || isTyping, [options, isTyping]);\n\n\tconst placeholder = useMemo(\n\t\t() =>\n\t\t\tinputHasFocus && module\n\t\t\t\t? t('search.active_input_label', 'Separate your keywords by a comma or pressing TAB')\n\t\t\t\t: t('search.idle_input_label', 'Search in {{module}}', {\n\t\t\t\t\t\tmodule\n\t\t\t\t }),\n\t\t[inputHasFocus, module, t]\n\t);\n\n\tconst clearButtonPlaceholder = useMemo(\n\t\t() =>\n\t\t\tshowClear || isTyping\n\t\t\t\t? t('search.clear', 'Clear search input')\n\t\t\t\t: t('search.already_clear', 'Search input is already clear'),\n\t\t[showClear, t, isTyping]\n\t);\n\tconst searchBtnTooltipLabel = useMemo(() => {\n\t\tif (searchIsEnabled && inputState.length > 0) {\n\t\t\treturn t('search.start', 'Start search');\n\t\t}\n\t\tif (inputHasFocus) {\n\t\t\treturn t(\n\t\t\t\t'search.type_or_choose_suggestion',\n\t\t\t\t'Type or choose some keywords to start a search'\n\t\t\t);\n\t\t}\n\t\tif (query.length > 0) {\n\t\t\treturn t('label.edit_to_start_search', 'Edit your search to start a new one');\n\t\t}\n\t\treturn t('search.type_to_start_search', 'Type some keywords to start a search');\n\t}, [t, searchIsEnabled, inputState.length, inputHasFocus, query.length]);\n\n\tconst onChipAdd = useCallback(\n\t\t(newChip: string | unknown): ChipItem => {\n\t\t\tsetIsTyping(false);\n\t\t\tsetInputTyped('');\n\t\t\tif (module) {\n\t\t\t\tconst suggestions = filter(\n\t\t\t\t\tappSuggestions,\n\t\t\t\t\t(suggestion) => suggestion?.app === module\n\t\t\t\t).slice(0, 5);\n\n\t\t\t\tsetOptions(suggestions);\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tlabel: typeof newChip === 'string' ? newChip : '',\n\t\t\t\tvalue: newChip,\n\t\t\t\thasAvatar: false\n\t\t\t};\n\t\t},\n\t\t[appSuggestions, module]\n\t);\n\n\tuseEffect(() => {\n\t\tsetInputState(map(query, (q) => ({ ...q, disabled: searchDisabled })));\n\t}, [searchDisabled, query]);\n\n\tconst disableClearButton = useMemo(() => (isTyping ? false : !showClear), [showClear, isTyping]);\n\n\treturn (\n\t\t<Container width=\"fit\" flexGrow=\"1\" orientation=\"horizontal\" minWidth=\"0\" ref={containerRef}>\n\t\t\t<Tooltip\n\t\t\t\tdisabled={!searchDisabled}\n\t\t\t\tmaxWidth=\"100%\"\n\t\t\t\tlabel={\n\t\t\t\t\ttooltip ??\n\t\t\t\t\tt('search.unable_to_parse_query', 'Unable to complete the search, clear it and retry')\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<Container orientation=\"horizontal\" width=\"fill\">\n\t\t\t\t\t<Container minWidth=\"512px\" width=\"fill\">\n\t\t\t\t\t\t<Container orientation=\"horizontal\" width=\"fill\">\n\t\t\t\t\t\t\t<Container width=\"fit\">\n\t\t\t\t\t\t\t\t<ModuleSelector />\n\t\t\t\t\t\t\t</Container>\n\t\t\t\t\t\t\t<StyledContainer orientation=\"horizontal\">\n\t\t\t\t\t\t\t\t<StyledChipInput\n\t\t\t\t\t\t\t\t\tdisabled={searchDisabled}\n\t\t\t\t\t\t\t\t\tinputRef={inputRef}\n\t\t\t\t\t\t\t\t\tvalue={inputState}\n\t\t\t\t\t\t\t\t\tonAdd={onChipAdd}\n\t\t\t\t\t\t\t\t\toptions={options}\n\t\t\t\t\t\t\t\t\tplaceholder={placeholder}\n\t\t\t\t\t\t\t\t\tconfirmChipOnBlur={false}\n\t\t\t\t\t\t\t\t\tconfirmChipOnSpace={false}\n\t\t\t\t\t\t\t\t\tseparators={['Enter', 'NumpadEnter', 'Comma']}\n\t\t\t\t\t\t\t\t\tbackground={searchDisabled ? 'gray5' : 'gray6'}\n\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\tcursor: 'pointer',\n\t\t\t\t\t\t\t\t\t\toverflowX: 'hidden'\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tonChange={onQueryChange}\n\t\t\t\t\t\t\t\t\tonInputType={onInputType}\n\t\t\t\t\t\t\t\t\tonInputTypeDebounce={0}\n\t\t\t\t\t\t\t\t\tonBlur={removeFocus}\n\t\t\t\t\t\t\t\t\tonFocus={addFocus}\n\t\t\t\t\t\t\t\t\tdisableOptions={disableOptions}\n\t\t\t\t\t\t\t\t\trequireUniqueChips={false}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</StyledContainer>\n\t\t\t\t\t\t</Container>\n\t\t\t\t\t</Container>\n\n\t\t\t\t\t{!disableClearButton && (\n\t\t\t\t\t\t<Padding left=\"small\">\n\t\t\t\t\t\t\t<Tooltip label={clearButtonPlaceholder} placement=\"bottom\">\n\t\t\t\t\t\t\t\t<OutlinedIconButton\n\t\t\t\t\t\t\t\t\tsize=\"large\"\n\t\t\t\t\t\t\t\t\tcustomSize={{\n\t\t\t\t\t\t\t\t\t\ticonSize: 'large',\n\t\t\t\t\t\t\t\t\t\tpaddingSize: 'small'\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tdisabled={disableClearButton}\n\t\t\t\t\t\t\t\t\ticon=\"BackspaceOutline\"\n\t\t\t\t\t\t\t\t\ticonColor=\"primary\"\n\t\t\t\t\t\t\t\t\tonClick={clearSearch}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<Padding left=\"small\">\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\tmaxWidth=\"100%\"\n\t\t\t\t\t\t\tdisabled={searchDisabled}\n\t\t\t\t\t\t\tlabel={searchBtnTooltipLabel}\n\t\t\t\t\t\t\tplacement=\"bottom\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\t\tsize=\"large\"\n\t\t\t\t\t\t\t\tcustomSize={{\n\t\t\t\t\t\t\t\t\ticonSize: 'large',\n\t\t\t\t\t\t\t\t\tpaddingSize: 'small'\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\ticon=\"Search\"\n\t\t\t\t\t\t\t\tdisabled={!(searchIsEnabled && inputState.length > 0)}\n\t\t\t\t\t\t\t\tbackgroundColor=\"primary\"\n\t\t\t\t\t\t\t\ticonColor=\"gray6\"\n\t\t\t\t\t\t\t\tonClick={onSearch}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</Padding>\n\t\t\t\t</Container>\n\t\t\t</Tooltip>\n\t\t</Container>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { isFunction } from 'lodash';\nimport create from 'zustand';\nimport { QueryChip, SearchState } from '../../types';\n\nexport const useSearchStore = create<SearchState>((set, get) => ({\n\tquery: [],\n\tsearchDisabled: false,\n\ttooltip: undefined,\n\tsetSearchDisabled: (searchDisabled: boolean, tooltip?: string): void =>\n\t\tset({ searchDisabled, tooltip }),\n\tupdateQuery: (query: Array<QueryChip> | ((q: Array<QueryChip>) => Array<QueryChip>)): void =>\n\t\tset({ query: isFunction(query) ? query(get().query) : query }),\n\tupdateModule: (module: string): void => set({ module })\n}));\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useMemo } from 'react';\nimport { map } from 'lodash';\nimport { useTranslation } from 'react-i18next';\nimport { AccountsSettings } from './accounts-settings';\nimport { useUserAccount } from '../store/account';\n\nconst AccountWrapper = (): React.ReactElement | null => {\n\tconst accountSettings = useUserAccount();\n\tconst [t] = useTranslation();\n\tconst identitiesDefault = useMemo(() => {\n\t\tconst temp = map(accountSettings?.identities.identity, (item, index) => ({\n\t\t\tid: item.name === 'DEFAULT' ? '0' : (index + 1).toString(),\n\t\t\ttype: item.name === 'DEFAULT' ? t('label.primary', 'Primary') : t('label.persona', 'Persona'),\n\t\t\tidentityId: item._attrs.zimbraPrefIdentityId || '',\n\t\t\tfromAddress: item._attrs.zimbraPrefFromAddress || '',\n\t\t\tidentityName: item._attrs.zimbraPrefIdentityName || '',\n\t\t\tfromDisplay: item._attrs.zimbraPrefFromDisplay || '',\n\t\t\trecoveryAccount: item._attrs.zimbraRecoveryAccount || '',\n\t\t\treplyToDisplay: item._attrs.zimbraPrefReplyToDisplay || '',\n\t\t\treplyToAddress: item._attrs.zimbraPrefReplyToAddress || '',\n\t\t\treplyToEnabled: item._attrs.zimbraPrefReplyToEnabled || '',\n\t\t\tsaveToSent: item._attrs.zimbraPrefSaveToSent || '',\n\t\t\tsentMailFolder: item._attrs.zimbraPrefSentMailFolder || '',\n\t\t\twhenInFoldersEnabled: item._attrs.zimbraPrefWhenInFoldersEnabled || '',\n\t\t\twhenSentToEnabled: item._attrs.zimbraPrefWhenSentToEnabled || '',\n\t\t\twhenSentToAddresses: item._attrs.zimbraPrefWhenSentToAddresses || ''\n\t\t}));\n\t\tconst result = [temp[temp.length - 1], ...temp];\n\t\tresult.pop();\n\t\treturn result;\n\t}, [accountSettings, t]);\n\n\treturn identitiesDefault.length > 0 ? (\n\t\t<AccountsSettings identitiesDefault={identitiesDefault} t={t} />\n\t) : null;\n};\n\nexport default AccountWrapper;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useCallback, useMemo, useState, useEffect, ReactElement } from 'react';\nimport { Container, useSnackbar } from '@zextras/carbonio-design-system';\nimport { TFunction } from 'react-i18next';\nimport { map, includes, findIndex, reduce, find, replace, lowerFirst, isEmpty } from 'lodash';\nimport { useUserSettings } from '../store/account/hooks';\nimport { editSettings } from '../network/edit-settings';\nimport { SHELL_APP_ID } from '../constants';\nimport { Mods, IdentityProps, CreateIdentityProps } from '../../types';\nimport { useAccountStore } from '../store/account/store';\nimport AccountsList from './components/account-settings/accounts-list';\nimport PrimaryAccountSettings from './components/account-settings/primary-account-settings';\nimport SettingsSentMessages from './components/account-settings/settings-sent-messages';\nimport PasswordRecoverySettings from './components/account-settings/password-recovery-settings';\nimport Delegates, { DelegateType } from './components/account-settings/delegates';\nimport PersonaSettings from './components/account-settings/persona-settings';\nimport PersonaUseSection from './components/account-settings/persona-use-section';\nimport SettingsHeader from './components/settings-header';\nimport { getXmlSoapFetch } from '../network/fetch';\n\n// external accounts not yet activated, graphical part is complete\n// import ExternalAccount from './components/account-settings/external-account-settings';\n// import AdvancedSettings from './components/account-settings/advanced-settings';\n// import DownloadMessages from './components/account-settings/download-messages';\n\ntype ModifyProps = { id: string | number; key: string; value: string | boolean } | undefined;\ntype AddModProps = {\n\ttype: string;\n\tmodifyProp?: ModifyProps;\n\tdeleteList?: string[];\n\tcreateList?: { prefs: CreateIdentityProps }[];\n};\ntype AccountSettingsProps = {\n\tidentitiesDefault: IdentityProps[];\n\tt: TFunction;\n};\n\ntype UserRightsProps = { email: string; right: string };\nexport const AccountsSettings = ({ identitiesDefault, t }: AccountSettingsProps): ReactElement => {\n\tconst [mods, setMods] = useState<Mods>({});\n\tconst [activeDelegateView, setActiveDelegateView] = useState('0');\n\tconst [selectedIdentityId, setSelectedIdentityId] = useState(0);\n\tconst [identities, setIdentities] = useState<IdentityProps[]>(identitiesDefault);\n\tconst [delegates, setDelegates] = useState<DelegateType[]>([]);\n\n\tconst maxIdentities = useUserSettings().attrs.zimbraIdentityMaxNumEntries;\n\tconst addMod = useCallback(\n\t\t(arg: AddModProps) => {\n\t\t\tconst { type, modifyProp, deleteList, createList } = arg;\n\t\t\tsetMods((prevState) => {\n\t\t\t\tconst prevRecord = find(\n\t\t\t\t\tprevState?.identity?.modifyList,\n\t\t\t\t\t(item) => item.id === modifyProp?.id\n\t\t\t\t)?.prefs;\n\t\t\t\tconst modifyList =\n\t\t\t\t\ttypeof modifyProp !== 'undefined'\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t...prevState.identity?.modifyList,\n\t\t\t\t\t\t\t\t[modifyProp.id]: {\n\t\t\t\t\t\t\t\t\tid: modifyProp.id,\n\t\t\t\t\t\t\t\t\tprefs: { ...prevRecord, [modifyProp.key]: modifyProp.value }\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: prevState.identity?.modifyList;\n\t\t\t\tconst newCreateList = prevState.identity?.createList || createList;\n\t\t\t\tconst newDeleteList = prevState.identity?.deleteList || deleteList;\n\t\t\t\treturn {\n\t\t\t\t\t...prevState,\n\n\t\t\t\t\t[type]: {\n\t\t\t\t\t\tdeleteList: newDeleteList,\n\t\t\t\t\t\tcreateList: newCreateList,\n\t\t\t\t\t\tmodifyList\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t});\n\t\t},\n\t\t[setMods]\n\t);\n\n\tconst modifyCreateList = useCallback((arg: AddModProps) => {\n\t\tconst { type, modifyProp } = arg;\n\t\tsetMods((prevState) => {\n\t\t\tconst prevRecord = find(\n\t\t\t\tprevState?.identity?.createList,\n\t\t\t\t(item) => item.prefs.requestId === modifyProp?.id\n\t\t\t)?.prefs;\n\t\t\tconst modifiedCreateList =\n\t\t\t\ttypeof modifyProp !== 'undefined'\n\t\t\t\t\t? {\n\t\t\t\t\t\t\t...prevState.identity?.createList,\n\t\t\t\t\t\t\t[modifyProp.id]: {\n\t\t\t\t\t\t\t\tprefs: { ...prevRecord, [modifyProp.key]: modifyProp.value }\n\t\t\t\t\t\t\t}\n\t\t\t\t\t }\n\t\t\t\t\t: undefined;\n\t\t\treturn {\n\t\t\t\t...prevState,\n\n\t\t\t\t[type]: {\n\t\t\t\t\tcreateList: modifiedCreateList,\n\t\t\t\t\tdeleteList: prevState.identity?.deleteList,\n\t\t\t\t\tmodifyList: prevState.identity?.modifyList\n\t\t\t\t}\n\t\t\t};\n\t\t});\n\t}, []);\n\tconst createIdentities = useCallback(\n\t\t(createList: { prefs: CreateIdentityProps }[]) => {\n\t\t\tconst arg = {\n\t\t\t\ttype: 'identity',\n\t\t\t\tcreateList\n\t\t\t};\n\t\t\taddMod(arg);\n\t\t},\n\t\t[addMod]\n\t);\n\n\tconst updateIdentities = useCallback(\n\t\t(modifyProp: { id: string | number; key: string; value: string | boolean }) => {\n\t\t\tconst arg = {\n\t\t\t\ttype: 'identity',\n\t\t\t\tmodifyProp: { id: modifyProp.id, key: modifyProp.key, value: modifyProp.value }\n\t\t\t};\n\t\t\tif (typeof modifyProp.id === 'string') {\n\t\t\t\taddMod(arg);\n\t\t\t} else if (typeof modifyProp.id === 'number') {\n\t\t\t\tmodifyCreateList(arg);\n\t\t\t}\n\t\t\tconst updatedIdentityKey = lowerFirst(replace(modifyProp.key, 'zimbraPref', ''));\n\t\t\tsetIdentities(\n\t\t\t\tmap(identities, (item) =>\n\t\t\t\t\titem.identityId === modifyProp.id\n\t\t\t\t\t\t? { ...item, [updatedIdentityKey]: modifyProp.value }\n\t\t\t\t\t\t: item\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\t\t[addMod, identities, modifyCreateList]\n\t);\n\n\tconst deleteIdentities = useCallback(\n\t\t(deleteList: string[]) => {\n\t\t\tconst arg = {\n\t\t\t\ttype: 'identity',\n\t\t\t\tdeleteList\n\t\t\t};\n\t\t\taddMod(arg);\n\t\t},\n\t\t[addMod]\n\t);\n\n\tconst createSnackbar = useSnackbar();\n\n\tuseEffect(() => {\n\t\tgetXmlSoapFetch(SHELL_APP_ID)(\n\t\t\t'GetRights',\n\t\t\t`<GetRightsRequest xmlns=\"urn:zimbraAccount\"></GetRightsRequest>`\n\t\t).then((res: any) => {\n\t\t\tif (res.ace) {\n\t\t\t\tconst tempResult: UserRightsProps[] = map(res.ace, (item) => ({\n\t\t\t\t\temail: item.d,\n\t\t\t\t\tright: item.right\n\t\t\t\t}));\n\t\t\t\tconst resultReduced = reduce(\n\t\t\t\t\ttempResult,\n\t\t\t\t\t(result: UserRightsProps[], item) => {\n\t\t\t\t\t\tconst index = findIndex(result, { email: item.email });\n\t\t\t\t\t\tif (index === -1) {\n\t\t\t\t\t\t\tresult.push({ email: item.email, right: item.right });\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tresult.push({\n\t\t\t\t\t\t\t\temail: item.email,\n\t\t\t\t\t\t\t\tright: `${item.right} and ${result[index].right}`\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\tresult.splice(index, 1);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn result;\n\t\t\t\t\t},\n\t\t\t\t\t[]\n\t\t\t\t);\n\t\t\t\tconst result = map(resultReduced, (item: UserRightsProps, index) => ({\n\t\t\t\t\t...item,\n\t\t\t\t\tid: index.toString()\n\t\t\t\t}));\n\t\t\t\tsetDelegates(result);\n\t\t\t}\n\t\t});\n\t}, []);\n\n\tuseEffect(() => {\n\t\tsetIdentities(identitiesDefault);\n\t\tsetMods({});\n\t}, [identitiesDefault]);\n\n\tconst onSave = useCallback(() => {\n\t\tif (\n\t\t\tidentitiesDefault.length +\n\t\t\t\t(mods.identity?.createList?.length || 0) -\n\t\t\t\t(mods?.identity?.deleteList?.length || 0) >\n\t\t\tmaxIdentities\n\t\t) {\n\t\t\tcreateSnackbar({\n\t\t\t\tkey: `new`,\n\t\t\t\treplace: true,\n\t\t\t\ttype: 'error',\n\t\t\t\tlabel: t(\n\t\t\t\t\t'message.snackbar.identities_quota_exceeded',\n\t\t\t\t\t'The identitity could not be created because you have exceeded your identity quota'\n\t\t\t\t),\n\t\t\t\tautoHideTimeout: 5000,\n\t\t\t\thideButton: true\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\teditSettings(mods)\n\t\t\t.then(() => {\n\t\t\t\tcreateSnackbar({\n\t\t\t\t\tkey: `new`,\n\t\t\t\t\treplace: true,\n\t\t\t\t\ttype: 'info',\n\t\t\t\t\tlabel: t('message.snackbar.settings_saved', 'Edits saved correctly'),\n\t\t\t\t\tautoHideTimeout: 3000,\n\t\t\t\t\thideButton: true\n\t\t\t\t});\n\t\t\t})\n\t\t\t.catch(() => {\n\t\t\t\tcreateSnackbar({\n\t\t\t\t\tkey: `new`,\n\t\t\t\t\treplace: true,\n\t\t\t\t\ttype: 'error',\n\t\t\t\t\tlabel: t('snackbar.error', 'Something went wrong, please try again'),\n\t\t\t\t\tautoHideTimeout: 3000,\n\t\t\t\t\thideButton: true\n\t\t\t\t});\n\t\t\t});\n\t\tsetMods({});\n\t}, [identitiesDefault.length, mods, maxIdentities, createSnackbar, t]);\n\n\tconst onCancel = useCallback(() => setMods({}), []);\n\tconst title: string = useMemo(() => t('label.accounts', 'Accounts'), [t]);\n\tconst isDirty = useMemo(() => !isEmpty(mods), [mods]);\n\treturn (\n\t\t<>\n\t\t\t<SettingsHeader onSave={onSave} onCancel={onCancel} isDirty={isDirty} title={title} />\n\t\t\t<Container background=\"gray5\" padding={{ top: 'large' }} height=\"fit\" />\n\t\t\t<Container\n\t\t\t\tbackground=\"gray5\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\tstyle={{ overflow: 'auto' }}\n\t\t\t>\n\t\t\t\t<AccountsList\n\t\t\t\t\tt={t}\n\t\t\t\t\tidentities={identities}\n\t\t\t\t\tsetIdentities={setIdentities}\n\t\t\t\t\tselectedIdentityId={selectedIdentityId}\n\t\t\t\t\tsetSelectedIdentityId={setSelectedIdentityId}\n\t\t\t\t\tdeleteIdentities={deleteIdentities}\n\t\t\t\t\tcreateIdentities={createIdentities}\n\t\t\t\t/>\n\t\t\t\t{identities[selectedIdentityId]?.type === t('label.primary', 'Primary') && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PrimaryAccountSettings\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={identities[0]}\n\t\t\t\t\t\t\tupdateIdentities={updateIdentities}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<SettingsSentMessages\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={identities[selectedIdentityId]}\n\t\t\t\t\t\t\tisExternalAccount={false}\n\t\t\t\t\t\t\tupdateIdentities={updateIdentities}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t{/* <PasswordRecoverySettings\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={identities[selectedIdentityId]}\n\t\t\t\t\t\t\tcreateSnackbar={createSnackbar}\n\t\t\t\t\t\t/> */}\n\t\t\t\t\t\t<Delegates\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={delegates}\n\t\t\t\t\t\t\tactiveDelegateView={activeDelegateView}\n\t\t\t\t\t\t\tsetActiveDelegateView={setActiveDelegateView}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{identities[selectedIdentityId]?.type === t('label.persona', 'Persona') && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<PersonaSettings\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={identities[selectedIdentityId]}\n\t\t\t\t\t\t\tupdateIdentities={updateIdentities}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<SettingsSentMessages\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={identities[selectedIdentityId]}\n\t\t\t\t\t\t\tisExternalAccount={false}\n\t\t\t\t\t\t\tupdateIdentities={updateIdentities}\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<PersonaUseSection\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={identities[selectedIdentityId]}\n\t\t\t\t\t\t\tupdateIdentities={updateIdentities}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{includes(['IMAP', 'POP'], identities[selectedIdentityId]?.type) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{/* <ExternalAccount t={t} items={identities} />\n\t\t\t\t\t\t<AdvancedSettings t={t} items={identities} />\n\t\t\t\t\t\t<DownloadMessages t={t} items={identities} />\n\t\t\t\t\t\t<SettingsSentMessages\n\t\t\t\t\t\t\tt={t}\n\t\t\t\t\t\t\titems={identities[selectedIdentityId]}\n\t\t\t\t\t\t\tisExternalAccount\n\t\t\t\t\t\t\tupdateIdentities={updateIdentities}\n\t\t\t\t\t\t\tsetMods={setMods}\n\t\t\t\t\t\t/> */}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t</Container>\n\t\t</>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useCallback, ReactElement, useState, useContext } from 'react';\nimport {\n\tContainer,\n\tText,\n\tList,\n\tDivider,\n\tRow,\n\tPadding,\n\tButtonOld as Button,\n\tIcon,\n\tModalManagerContext,\n\tItemComponentProps\n} from '@zextras/carbonio-design-system';\nimport { TFunction } from 'i18next';\nimport { map, filter, max, noop } from 'lodash';\nimport { IdentityProps, CreateIdentityProps } from '../../../../types';\n\ntype AccountsListProps = {\n\tt: TFunction;\n\tidentities: IdentityProps[];\n\tsetIdentities: (identities: IdentityProps[]) => void;\n\tselectedIdentityId: number;\n\tsetSelectedIdentityId: (value: number) => void;\n\tdeleteIdentities: (deleteList: string[]) => void;\n\tcreateIdentities: (createList: { prefs: CreateIdentityProps }[]) => void;\n};\n\nconst AccountsList = ({\n\tt,\n\tselectedIdentityId,\n\tidentities,\n\tsetIdentities,\n\tsetSelectedIdentityId,\n\tdeleteIdentities,\n\tcreateIdentities\n}: AccountsListProps): ReactElement => {\n\tconst changeView = (value: number): void => setSelectedIdentityId(value);\n\n\tconst ListItem = ({ item }: ItemComponentProps<IdentityProps>): ReactElement => (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tonClick={(): void => {\n\t\t\t\t\tchangeView(Number(item.id));\n\t\t\t\t}}\n\t\t\t\torientation=\"horizontal\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t>\n\t\t\t\t<Row width=\"fill\" mainAlignment=\"space-between\">\n\t\t\t\t\t<Container orientation=\"horizontal\" mainAlignment=\"flex-start\" width=\"fit\">\n\t\t\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t\t\t<Icon icon=\"CheckmarkCircle2Outline\" size=\"large\" color=\"primary\" />\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t\t\t<Text weight=\"regular\" size=\"small\">\n\t\t\t\t\t\t\t\t{item.identityName}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t\t\t<Text weight=\"regular\" size=\"small\" color=\"secondary\">\n\t\t\t\t\t\t\t\t({item.fromAddress})\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t</Container>\n\t\t\t\t\t<Container width=\"fit\" mainAlignment=\"flex-end\">\n\t\t\t\t\t\t<Text weight=\"regular\" size=\"small\">\n\t\t\t\t\t\t\t{item.type}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Container>\n\t\t\t\t</Row>\n\n\t\t\t\t<Row width=\"fit\"></Row>\n\t\t\t</Container>\n\t\t\t<Divider />\n\t\t</>\n\t);\n\n\tconst createModal = useContext(ModalManagerContext);\n\n\tconst [createListrequestId, setCreateListrequestId] = useState(0);\n\tconst [createList, setCreateList] = useState<{ prefs: CreateIdentityProps }[]>([]);\n\tconst addNewPersona = useCallback(() => {\n\t\tconst newPersonaNextNumber =\n\t\t\tNumber(\n\t\t\t\tmax([\n\t\t\t\t\t...filter(\n\t\t\t\t\t\tmap(\n\t\t\t\t\t\t\tmap(\n\t\t\t\t\t\t\t\tfilter(identities, (item) => item.identityName?.includes('New Persona')),\n\t\t\t\t\t\t\t\t(item: IdentityProps) => item.identityName\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t(item: string) => parseFloat(item.replace('New Persona ', ''))\n\t\t\t\t\t\t),\n\t\t\t\t\t\t(item) => Number(item)\n\t\t\t\t\t)\n\t\t\t\t])\n\t\t\t) + 1;\n\t\tconst newPersonaName = `New Persona ${newPersonaNextNumber || 1}`;\n\t\tidentities.push({\n\t\t\tid: `${identities.length}`,\n\t\t\ttype: t('label.persona', 'Persona'),\n\t\t\tidentityId: createListrequestId,\n\t\t\tfromAddress: identities[0]?.fromAddress,\n\t\t\tidentityName: newPersonaName,\n\t\t\tfromDisplay: identities[0]?.fromDisplay,\n\t\t\treplyToDisplay: '',\n\t\t\treplyToAddress: '',\n\t\t\treplyToEnabled: 'FALSE',\n\t\t\tsaveToSent: '',\n\t\t\tsentMailFolder: '',\n\t\t\twhenInFoldersEnabled: '',\n\t\t\twhenSentToEnabled: ''\n\t\t});\n\t\tsetIdentities(identities);\n\t\tsetCreateListrequestId(createListrequestId + 1);\n\t\tsetCreateList((state) => {\n\t\t\tstate.push({\n\t\t\t\tprefs: {\n\t\t\t\t\trequestId: createListrequestId,\n\t\t\t\t\tzimbraPrefIdentityName: newPersonaName,\n\t\t\t\t\tzimbraPrefFromDisplay: identities[0]?.fromDisplay,\n\t\t\t\t\tzimbraPrefFromAddress: identities[0]?.fromAddress,\n\t\t\t\t\tzimbraPrefFromAddressType: 'sendAs',\n\t\t\t\t\tzimbraPrefReplyToEnabled: 'FALSE',\n\t\t\t\t\tzimbraPrefReplyToDisplay: '',\n\t\t\t\t\tzimbraPrefReplyToAddress: '',\n\t\t\t\t\tzimbraPrefDefaultSignatureId: '',\n\t\t\t\t\tzimbraPrefForwardReplySignatureId: '',\n\t\t\t\t\tzimbraPrefWhenSentToEnabled: 'FALSE',\n\t\t\t\t\tzimbraPrefWhenInFoldersEnabled: 'FALSE'\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn state;\n\t\t});\n\t\tcreateIdentities(createList);\n\t\tsetSelectedIdentityId(identities.length - 1);\n\t}, [\n\t\tidentities,\n\t\tsetIdentities,\n\t\tt,\n\t\tcreateIdentities,\n\t\tcreateListrequestId,\n\t\tcreateList,\n\t\tsetSelectedIdentityId\n\t]);\n\n\tconst [deleteList, setDeleteList] = useState<string[]>([]);\n\tconst onConfirmDelete = useCallback((): void => {\n\t\tconst newIdentities = map(\n\t\t\tfilter(\n\t\t\t\tidentities,\n\t\t\t\t(identity) => identity?.identityId !== identities[selectedIdentityId]?.identityId\n\t\t\t),\n\t\t\t(item: IdentityProps, index: number) => ({ ...item, id: index.toString() })\n\t\t);\n\t\tsetDeleteList((state) => {\n\t\t\tstate.push(identities[selectedIdentityId]?.identityId.toString());\n\t\t\treturn state;\n\t\t});\n\t\tsetIdentities(newIdentities);\n\t\tdeleteIdentities(deleteList);\n\t\tsetSelectedIdentityId(selectedIdentityId - 1);\n\t}, [\n\t\tidentities,\n\t\tsetIdentities,\n\t\tdeleteIdentities,\n\t\tdeleteList,\n\t\tsetSelectedIdentityId,\n\t\tselectedIdentityId\n\t]);\n\tconst onDelete = useCallback((): void => {\n\t\t// I'm disabling lint as the DS is not defining the type\n\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t// @ts-ignore\n\t\tconst closeModal = createModal({\n\t\t\ttitle: t('label.permanent_delete_title', 'Are you sure to permanently delete this Persona?'),\n\t\t\tonConfirm: () => {\n\t\t\t\tonConfirmDelete();\n\t\t\t\tcloseModal();\n\t\t\t},\n\t\t\tconfirmLabel: t('label.delete_permanently', 'Delete permanently'),\n\t\t\tconfirmColor: 'error',\n\t\t\tshowCloseIcon: true,\n\t\t\tonClose: () => closeModal(),\n\t\t\tchildren: (\n\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t<Text overflow=\"break-word\">\n\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t'messages.permanent_delete_body',\n\t\t\t\t\t\t\t'If you permanently delete this Persona you will not be able to recover it. Continue?'\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Text>\n\t\t\t\t</Padding>\n\t\t\t)\n\t\t});\n\t}, [createModal, t, onConfirmDelete]);\n\n\treturn (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Padding horizontal=\"medium\" bottom=\"large\" width=\"100%\">\n\t\t\t\t\t<Text weight=\"bold\">{t('label.accounts_list', 'Accounts list')}</Text>\n\t\t\t\t</Padding>\n\t\t\t\t<List\n\t\t\t\t\titems={identities}\n\t\t\t\t\tItemComponent={ListItem}\n\t\t\t\t\tactive={identities[selectedIdentityId]?.id}\n\t\t\t\t\theight=\"fit\"\n\t\t\t\t/>\n\t\t\t</Container>\n\t\t\t<Row\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\twidth=\"fill\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t>\n\t\t\t\t{/* <Padding right=\"small\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tlabel={t('label.add_external_account', 'Add external account')}\n\t\t\t\t\t\tonClick={noop}\n\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\ttype=\"outlined\"\n\t\t\t\t\t\tdisabled\n\t\t\t\t\t/>\n\t\t\t\t</Padding> */}\n\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tlabel={t('label.add_persona', 'Add persona')}\n\t\t\t\t\t\tonClick={(): void => addNewPersona()}\n\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\ttype=\"outlined\"\n\t\t\t\t\t/>\n\t\t\t\t</Padding>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={t('label.delete', 'Delete')}\n\t\t\t\t\tonClick={(): void => onDelete()}\n\t\t\t\t\tcolor=\"error\"\n\t\t\t\t\ttype=\"outlined\"\n\t\t\t\t\tdisabled={identities[selectedIdentityId]?.type === t('label.primary', 'Primary')}\n\t\t\t\t/>\n\t\t\t</Row>\n\t\t\t<Padding bottom=\"large\" />\n\t\t</>\n\t);\n};\n\nexport default AccountsList;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { ReactElement, useState } from 'react';\nimport {\n\tContainer,\n\tText,\n\tList,\n\tDivider,\n\tRow,\n\tPadding,\n\tButton,\n\tRadio,\n\tRadioGroup,\n\tItemType,\n\tItemComponentProps\n} from '@zextras/carbonio-design-system';\nimport { TFunction } from 'i18next';\nimport { noop } from 'lodash';\n\nexport interface DelegateType extends ItemType {\n\temail: string;\n\tright: string;\n\tlabel?: string;\n}\n\ntype DelegatesProps = {\n\tt: TFunction;\n\titems: Array<DelegateType>;\n\tactiveDelegateView: string;\n\tsetActiveDelegateView: (value: string) => void;\n};\n\nconst Delegates = ({\n\tt,\n\titems,\n\tactiveDelegateView,\n\tsetActiveDelegateView\n}: DelegatesProps): ReactElement => {\n\tconst [activeValue, setActiveValue] = useState('1');\n\n\tconst changeView = (value: string): void => setActiveDelegateView(value);\n\n\tconst ListItem = ({ item }: ItemComponentProps<DelegateType>): ReactElement => (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tonClick={(): void => changeView(item.id)}\n\t\t\t\torientation=\"horizontal\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t>\n\t\t\t\t<Row width=\"fill\" mainAlignment=\"space-between\">\n\t\t\t\t\t<Container orientation=\"horizontal\" mainAlignment=\"flex-start\" width=\"fit\">\n\t\t\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t\t\t<Text weight=\"regular\" size=\"small\">\n\t\t\t\t\t\t\t\t{item.label}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t\t\t<Text weight=\"regular\" size=\"small\" color=\"secondary\">\n\t\t\t\t\t\t\t\t{item.email}\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t</Container>\n\t\t\t\t\t<Container width=\"fit\" mainAlignment=\"flex-end\">\n\t\t\t\t\t\t<Text weight=\"regular\" size=\"small\">\n\t\t\t\t\t\t\t{item.right}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Container>\n\t\t\t\t</Row>\n\n\t\t\t\t<Row width=\"fit\"></Row>\n\t\t\t</Container>\n\t\t\t<Divider />\n\t\t</>\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Padding horizontal=\"medium\" bottom=\"large\" width=\"100%\">\n\t\t\t\t\t<Text weight=\"bold\">{t('label.delegates', 'Delegates')}</Text>\n\t\t\t\t</Padding>\n\t\t\t\t<List items={items} ItemComponent={ListItem} active={activeDelegateView} height=\"fit\" />\n\t\t\t</Container>\n\t\t\t<Row\n\t\t\t\tpadding={{ horizontal: 'large' }}\n\t\t\t\twidth=\"fill\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t>\n\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tlabel={t('label.add_delegate', 'Add delegate')}\n\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\ttype=\"outlined\"\n\t\t\t\t\t\tdisabled\n\t\t\t\t\t\tonClick={noop}\n\t\t\t\t\t/>\n\t\t\t\t</Padding>\n\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t<Button\n\t\t\t\t\t\tlabel={t('label.edit_permissions', 'Edit permissions')}\n\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\ttype=\"outlined\"\n\t\t\t\t\t\tdisabled\n\t\t\t\t\t\tonClick={noop}\n\t\t\t\t\t/>\n\t\t\t\t</Padding>\n\t\t\t\t<Button\n\t\t\t\t\tlabel={t('label.remove', 'remove')}\n\t\t\t\t\tcolor=\"error\"\n\t\t\t\t\ttype=\"outlined\"\n\t\t\t\t\tdisabled\n\t\t\t\t\tonClick={noop}\n\t\t\t\t/>\n\t\t\t</Row>\n\t\t\t<Container\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"100%\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<RadioGroup\n\t\t\t\t\tstyle={{ width: '100%', justifyContent: 'flex-start' }}\n\t\t\t\t\tvalue={activeValue}\n\t\t\t\t\tonChange={(newValue: string): void => setActiveValue(newValue)}\n\t\t\t\t>\n\t\t\t\t\t<Radio\n\t\t\t\t\t\twidth=\"100%\"\n\t\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t\t'label.save_to_my_sent_folder',\n\t\t\t\t\t\t\t'Save a copy of sent messages to my Sent folder'\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tvalue=\"1\"\n\t\t\t\t\t/>\n\t\t\t\t\t<Radio\n\t\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t\t'label.save_delegate_folder',\n\t\t\t\t\t\t\t'Save a copy of sent messages to delegate’s Sent folder'\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tvalue=\"2\"\n\t\t\t\t\t/>\n\t\t\t\t\t<Radio\n\t\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t\t'label.save_both_folders',\n\t\t\t\t\t\t\t'Save a copy of sent messages to my Sent folder and delegate’s folder'\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tvalue=\"3\"\n\t\t\t\t\t/>\n\t\t\t\t\t<Radio label={t('label.dont_save', 'Don’t save a copy of sent messages')} value=\"4\" />\n\t\t\t\t</RadioGroup>\n\t\t\t\t<Padding bottom=\"large\" />\n\t\t\t</Container>\n\t\t</>\n\t);\n};\n\nexport default Delegates;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useState, useCallback, ReactElement, useEffect, useMemo } from 'react';\nimport { Container, Text, Padding, Input, Row } from '@zextras/carbonio-design-system';\nimport { TFunction } from 'i18next';\nimport { IdentityProps } from '../../../../types';\n\ninterface PersonaSettingsProps {\n\tt: TFunction;\n\titems: IdentityProps;\n\tupdateIdentities: (modifyList: {\n\t\tid: string | number;\n\t\tkey: string;\n\t\tvalue: string | boolean;\n\t}) => void;\n}\n\nconst PersonaSettings = ({ t, items, updateIdentities }: PersonaSettingsProps): ReactElement => {\n\tconst [personaValue, setPersonaValue] = useState(items.identityName);\n\tconst personaLabel = useMemo(\n\t\t() => (personaValue ? '' : t('label.persona_name', 'Persona Name')),\n\t\t[personaValue, t]\n\t);\n\tuseEffect(() => {\n\t\tsetPersonaValue(items.identityName);\n\t}, [items.identityName]);\n\n\tconst onChange = useCallback(\n\t\t(ev) => {\n\t\t\tsetPersonaValue(ev.target.value);\n\t\t\tconst modifyProp = {\n\t\t\t\tid: items.identityId,\n\t\t\t\tkey: 'zimbraPrefIdentityName',\n\t\t\t\tvalue: ev.target.value\n\t\t\t};\n\n\t\t\tupdateIdentities(modifyProp);\n\t\t},\n\t\t[updateIdentities, items.identityId, setPersonaValue]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Padding horizontal=\"medium\" width=\"100%\">\n\t\t\t\t\t<Text weight=\"bold\">{t('label.persona_settings', 'Persona Settings')}</Text>\n\t\t\t\t</Padding>\n\t\t\t</Container>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Row orientation=\"vertical\" mainAlignment=\"flex-start\" width=\"fill\">\n\t\t\t\t\t<Row orientation=\"horizontal\" width=\"100%\" mainAlignment=\"flex-start\">\n\t\t\t\t\t\t<Text color=\"secondary\">\n\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t'label.use_personas_line1',\n\t\t\t\t\t\t\t\t'Use personas to quickly change many settings when sending e-mail messages.'\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Row>\n\t\t\t\t\t<Row orientation=\"horizontal\" width=\"100%\" mainAlignment=\"flex-start\">\n\t\t\t\t\t\t<Text color=\"secondary\">\n\t\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t\t'label.use_personas_line2',\n\t\t\t\t\t\t\t\t'For example, if you sometimes send e-mails in a particular role at work, create a persona for that.'\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Row>\n\t\t\t\t</Row>\n\t\t\t</Row>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Row takeAvailableSpace>\n\t\t\t\t\t<Input label={personaLabel} value={personaValue} onChange={onChange} />\n\t\t\t\t</Row>\n\t\t\t</Row>\n\n\t\t\t<Padding bottom=\"large\" />\n\t\t</>\n\t);\n};\n\nexport default PersonaSettings;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useMemo, useEffect, ReactElement, useState, useCallback } from 'react';\nimport { Container, Text, Padding, Input, Row, Checkbox } from '@zextras/carbonio-design-system';\nimport { TFunction } from 'i18next';\nimport { IdentityProps } from '../../../../types';\nimport { EMAIL_VALIDATION_REGEX } from '../../../constants';\n\ntype PersonaUseSectionProps = {\n\tt: TFunction;\n\titems: IdentityProps;\n\tupdateIdentities: (modifyList: {\n\t\tid: string | number;\n\t\tkey: string;\n\t\tvalue: string | boolean;\n\t}) => void;\n};\n\nconst PersonaUseSection = ({\n\tt,\n\titems,\n\tupdateIdentities\n}: PersonaUseSectionProps): ReactElement => {\n\tconst title = useMemo(() => t('label.use_persona', 'Use this persona'), [t]);\n\tconst whenSentToLabel = useMemo(\n\t\t() => t('label.when_replying', 'When replying or forwarding messages sent to:'),\n\t\t[t]\n\t);\n\t// this code is work in progress for when the mails sync is implemented\n\t// const [open, setOpen] = useState(false);\n\t// const onClose = useCallback(() => setOpen(false), []);\n\n\tconst [whenInFoldersEnabled, setWhenInFoldersEnabled] = useState(\n\t\titems.whenInFoldersEnabled === 'TRUE'\n\t);\n\tconst [whenSentToEnabled, setWhenSentToEnabled] = useState(items.whenSentToEnabled === 'TRUE');\n\tconst [whenSentToAddresses, setWhenSentToAddresses] = useState(items.whenSentToAddresses);\n\n\tuseEffect(() => {\n\t\tsetWhenSentToEnabled(items.whenSentToEnabled === 'TRUE');\n\t}, [items.whenSentToEnabled]);\n\tuseEffect(() => {\n\t\tsetWhenSentToAddresses(items.whenSentToAddresses);\n\t}, [items.whenSentToAddresses]);\n\tuseEffect(() => {\n\t\tsetWhenInFoldersEnabled(items.whenInFoldersEnabled === 'TRUE');\n\t}, [items.whenInFoldersEnabled]);\n\n\tconst whenSentToAddressesLabel = useMemo(\n\t\t() => (whenSentToAddresses ? '' : t('label.recipents', 'Recipients')),\n\t\t[t, whenSentToAddresses]\n\t);\n\tconst onClickWhenSentToEnabled = useCallback(() => {\n\t\tsetWhenSentToEnabled(!whenSentToEnabled);\n\t\tconst modifyProp = {\n\t\t\tid: items.identityId,\n\t\t\tkey: 'zimbraPrefWhenSentToEnabled',\n\t\t\tvalue: whenSentToEnabled ? 'FALSE' : 'TRUE'\n\t\t};\n\t\tupdateIdentities(modifyProp);\n\t}, [items.identityId, updateIdentities, whenSentToEnabled]);\n\n\tconst isValidEmail = useMemo(\n\t\t() => whenSentToEnabled && !EMAIL_VALIDATION_REGEX.test(whenSentToAddresses || ''),\n\t\t[whenSentToAddresses, whenSentToEnabled]\n\t);\n\n\tconst onChangeWhenSentToAddresses = useCallback(\n\t\t(value: string) => {\n\t\t\tsetWhenSentToAddresses(value);\n\t\t\tconst modifyProp = {\n\t\t\t\tid: items.identityId,\n\t\t\t\tkey: 'zimbraPrefWhenSentToAddresses',\n\t\t\t\tvalue\n\t\t\t};\n\n\t\t\tupdateIdentities(modifyProp);\n\t\t},\n\t\t[updateIdentities, items.identityId]\n\t);\n\n\t// this function is work in progress for when the mails sync is implemented\n\t// const onClickWhenInFoldersEnabled = useCallback(() => {\n\t// \tsetWhenInFoldersEnabled(!whenInFoldersEnabled);\n\t// \tif (!whenInFoldersEnabled === (items.whenInFoldersEnabled === 'TRUE')) {\n\t// \t\tsetMods({});\n\t// \t} else {\n\t// \t\tupdateIdentities(\n\t// \t\t\titems.identityId,\n\t// \t\t\t'zimbraPrefWhenInFoldersEnabled',\n\t// \t\t\titems.whenInFoldersEnabled ? 'TRUE' : 'FALSE'\n\t// \t\t);\n\t// \t}\n\t// }, [\n\t// \titems.whenInFoldersEnabled,\n\t// \twhenInFoldersEnabled,\n\t// \tsetMods,\n\t// \tupdateIdentities,\n\t// \titems.identityId\n\t// ]);\n\t// const modalProps = useMemo(\n\t// \t() => ({\n\t// \t\topen,\n\t// \t\tonClose,\n\t// \t\tsetFolder,\n\t// \t\tt\n\t// \t}),\n\t// \t[open, onClose, setFolder, t]\n\t// );\n\n\treturn (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Padding horizontal=\"medium\" width=\"100%\">\n\t\t\t\t\t<Text weight=\"bold\">{title}</Text>\n\t\t\t\t</Padding>\n\t\t\t</Container>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={whenSentToLabel}\n\t\t\t\t\tvalue={whenSentToEnabled}\n\t\t\t\t\tonClick={onClickWhenSentToEnabled}\n\t\t\t\t/>\n\t\t\t</Row>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Row width=\"50%\" padding={{ right: 'small' }}>\n\t\t\t\t\t<Input\n\t\t\t\t\t\tlabel={whenSentToAddressesLabel}\n\t\t\t\t\t\tvalue={whenSentToAddresses}\n\t\t\t\t\t\tdisabled={!whenSentToEnabled}\n\t\t\t\t\t\thasError={isValidEmail}\n\t\t\t\t\t\tonChange={(ev): void => onChangeWhenSentToAddresses(ev.target.value)}\n\t\t\t\t\t/>\n\t\t\t\t</Row>\n\t\t\t</Row>\n\t\t\t{/* <Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t'label.when_composing',\n\t\t\t\t\t\t'When composing, replying to or forwarding messages in folder(s):'\n\t\t\t\t\t)}\n\t\t\t\t\tvalue={whenInFoldersEnabled}\n\t\t\t\t\tonClick={(): void => onClickWhenInFoldersEnabled()}\n\t\t\t\t/>\n\t\t\t</Row>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Row width=\"50%\" padding={{ right: 'small' }}>\n\t\t\t\t\t<ChipInput\n\t\t\t\t\t\tlabel={t('label.reply_to_field_example', \"e.g. Bob Smith\")}\n\t\t\t\t\t\tvalue=\"\"\n\t\t\t\t\t\tplaceholder={t('label.folders', 'Folders')}\n\t\t\t\t\t\tbackground=\"gray5\"\n\t\t\t\t\t\ticon=\"FolderOutline\"\n\t\t\t\t\t\tdisabled={!whenInFoldersEnabled}\n\t\t\t\t\t\ticonAction={openFolderModal}\n\t\t\t\t\t/>\n\t\t\t\t</Row>\n\t\t\t</Row> */}\n\n\t\t\t<Padding bottom=\"large\" />\n\t\t\t{/* <FolderSelectModal compProps={modalProps} /> */}\n\t\t</>\n\t);\n};\n\nexport default PersonaUseSection;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useMemo, useCallback, ReactElement, useState, useEffect } from 'react';\nimport { Container, Text, Padding, Input, Row } from '@zextras/carbonio-design-system';\nimport { TFunction } from 'i18next';\nimport { IdentityProps } from '../../../../types';\n\ninterface PrimaryAccountSettingsProps {\n\tt: TFunction;\n\titems: IdentityProps;\n\tupdateIdentities: (modifyList: {\n\t\tid: string | number;\n\t\tkey: string;\n\t\tvalue: string | boolean;\n\t}) => void;\n}\n\nconst PrimaryAccountSettings = ({\n\tt,\n\titems,\n\tupdateIdentities\n}: PrimaryAccountSettingsProps): ReactElement => {\n\tconst emailValue = useMemo(() => items?.fromAddress, [items]);\n\tconst emailLabel = useMemo(\n\t\t() => (emailValue ? '' : t('label.email_address', 'E-mail address')),\n\t\t[emailValue, t]\n\t);\n\tconst [accountNameValue, setAccountNameValue] = useState(items?.identityName);\n\n\tuseEffect(() => setAccountNameValue(items.identityName), [items.identityName]);\n\tconst accountLabel = useMemo(\n\t\t() => (accountNameValue ? '' : t('label.account_name', 'Account Name')),\n\t\t[accountNameValue, t]\n\t);\n\n\tconst onChangeDisabled = useCallback(() => null, []);\n\tconst onChange = useCallback(\n\t\t(value: string): void => {\n\t\t\tsetAccountNameValue(value);\n\n\t\t\tconst modifyProp = {\n\t\t\t\tid: items.identityId,\n\t\t\t\tkey: 'zimbraPrefIdentityName',\n\t\t\t\tvalue\n\t\t\t};\n\n\t\t\tupdateIdentities(modifyProp);\n\t\t},\n\t\t[updateIdentities, items.identityId]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Padding horizontal=\"medium\" width=\"100%\">\n\t\t\t\t\t<Text weight=\"bold\">{t('primary_account.title', 'Primary Account Settings')}</Text>\n\t\t\t\t</Padding>\n\t\t\t</Container>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Row width=\"50%\" padding={{ right: 'small' }}>\n\t\t\t\t\t<Input label={emailLabel} value={emailValue || ' '} onChange={onChangeDisabled} />\n\t\t\t\t</Row>\n\t\t\t\t<Row width=\"50%\">\n\t\t\t\t\t<Input\n\t\t\t\t\t\tlabel={accountLabel}\n\t\t\t\t\t\tvalue={accountNameValue || ' '}\n\t\t\t\t\t\tonChange={(ev): void => onChange(ev.target.value)}\n\t\t\t\t\t/>\n\t\t\t\t</Row>\n\t\t\t</Row>\n\t\t\t<Padding bottom=\"large\" />\n\t\t</>\n\t);\n};\n\nexport default PrimaryAccountSettings;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useMemo, useCallback, ReactElement, useState, useEffect, ChangeEvent } from 'react';\nimport {\n\tContainer,\n\tText,\n\tPadding,\n\tInput,\n\tRow,\n\tSelect,\n\tCheckbox,\n\tDropdown,\n\tIcon,\n\tDropdownItem\n} from '@zextras/carbonio-design-system';\nimport { TFunction } from 'i18next';\nimport { filter, find } from 'lodash';\nimport { IdentityProps } from '../../../../types';\nimport { EMAIL_VALIDATION_REGEX } from '../../../constants';\n\ntype SettingsSentMessagesProps = {\n\tt: TFunction;\n\titems: IdentityProps;\n\tisExternalAccount: boolean;\n\tupdateIdentities: (modifyList: {\n\t\tid: string | number;\n\t\tkey: string;\n\t\tvalue: string | boolean;\n\t}) => void;\n};\n\nconst blankItem = { label: '', value: '' };\n\nconst SettingsSentMessages = ({\n\tt,\n\titems,\n\tisExternalAccount,\n\tupdateIdentities\n}: SettingsSentMessagesProps): ReactElement => {\n\tconst title = useMemo(() => t('label.settings_sent_messages', 'Settings for Sent Messages'), [t]);\n\tconst [replyToEnabledValue, setReplyToEnabledValue] = useState(items.replyToEnabled === 'TRUE');\n\tconst [replyToAddress, setReplyToAddress] = useState(items.replyToAddress);\n\tconst [dropdownOpen, setDropdownOpen] = useState(false);\n\tconst [fromDisplayValue, setFromDisplayValue] = useState(items.fromDisplay);\n\tconst [replyToDisplay, setReplyToDisplay] = useState(items?.replyToDisplay);\n\tconst fromAddressArray = useMemo(\n\t\t() => [{ value: items.fromAddress ?? '', label: items.fromAddress ?? '' }],\n\t\t[items?.fromAddress]\n\t);\n\tconst [fromAddress, setFromAddress] = useState(\n\t\t() => find(fromAddressArray, (item) => item.value === items.fromAddress) ?? blankItem\n\t);\n\n\tuseEffect(() => {\n\t\tsetReplyToEnabledValue(items.replyToEnabled === 'TRUE');\n\t}, [items.replyToEnabled]);\n\tuseEffect(() => {\n\t\tsetFromDisplayValue(items.fromDisplay);\n\t}, [items.fromDisplay]);\n\tuseEffect(() => {\n\t\tconst k = find(fromAddressArray, (item) => item.value === items.fromAddress) ?? blankItem;\n\t\tsetFromAddress(k);\n\t}, [fromAddressArray, items.fromAddress]);\n\tuseEffect(() => {\n\t\tsetReplyToDisplay(items?.replyToDisplay === undefined ? '' : items?.replyToDisplay);\n\t}, [items?.replyToDisplay]);\n\tuseEffect(() => {\n\t\tsetReplyToAddress(items.replyToAddress);\n\t}, [items.replyToAddress]);\n\n\tconst onClickReplyToEnabled = useCallback(() => {\n\t\tsetReplyToEnabledValue(!replyToEnabledValue);\n\t\tconst modifyProp = {\n\t\t\tid: items.identityId,\n\t\t\tkey: 'zimbraPrefReplyToEnabled',\n\t\t\tvalue: replyToEnabledValue ? 'FALSE' : 'TRUE'\n\t\t};\n\t\tupdateIdentities(modifyProp);\n\t}, [items.identityId, replyToEnabledValue, updateIdentities]);\n\n\tconst fromDisplayLabel = useMemo(\n\t\t() => (fromDisplayValue ? '' : t('label.from_name', 'From: \"Name\"')),\n\t\t[t, fromDisplayValue]\n\t);\n\tconst onChangeFromDisplayValue = (value: string): void => {\n\t\tsetFromDisplayValue(value);\n\t\tconst modifyProp = {\n\t\t\tid: items.identityId,\n\t\t\tkey: 'zimbraPrefFromDisplay',\n\t\t\tvalue\n\t\t};\n\t\tupdateIdentities(modifyProp);\n\t};\n\n\tconst fromAddressLabel = useMemo(\n\t\t() => (fromAddress ? '' : t('label.address', 'Address')),\n\t\t[fromAddress, t]\n\t);\n\n\tconst onChangeFromAddress = useCallback(\n\t\t(newVal) => {\n\t\t\tsetFromAddress(filter(fromAddressArray, (item) => item.value === newVal)[0]);\n\t\t\tconst modifyProp = {\n\t\t\t\tid: items.identityId,\n\t\t\t\tkey: 'zimbraPrefFromAddress',\n\t\t\t\tvalue: newVal\n\t\t\t};\n\t\t\tupdateIdentities(modifyProp);\n\t\t},\n\t\t[items.identityId, updateIdentities, fromAddressArray]\n\t);\n\n\tconst replyToEnabledLabel = useMemo(\n\t\t() => t('label.set_reply_to_field', 'Set the \"Reply-to\" field of e-mail message to:'),\n\t\t[t]\n\t);\n\n\tconst replyToDisplayLabel = useMemo(\n\t\t() => (replyToDisplay ? '' : t('label.reply_to_field_example', 'e.g. Bob Smith')),\n\t\t[t, replyToDisplay]\n\t);\n\tconst onChangePrefReplyToDisplay = useCallback(\n\t\t(value: string): void => {\n\t\t\tsetReplyToDisplay(value);\n\t\t\tconst modifyProp = {\n\t\t\t\tid: items.identityId,\n\t\t\t\tkey: 'zimbraPrefReplyToDisplay',\n\t\t\t\tvalue\n\t\t\t};\n\t\t\tupdateIdentities(modifyProp);\n\t\t},\n\t\t[updateIdentities, items.identityId]\n\t);\n\n\tconst replyToAddressLabel = useMemo(\n\t\t() => (replyToAddress ? '' : t('label.choose_account', 'Choose an account')),\n\t\t[t, replyToAddress]\n\t);\n\n\tconst replyToAddressArray = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: '0',\n\t\t\t\tlabel: items.fromAddress ?? ''\n\t\t\t}\n\t\t],\n\t\t[items.fromAddress]\n\t);\n\n\tconst onChangeReplyToAddress = useCallback(\n\t\t(value: string) => {\n\t\t\tsetReplyToAddress(value);\n\t\t\tconst modifyProp = {\n\t\t\t\tid: items.identityId,\n\t\t\t\tkey: 'zimbraPrefReplyToAddress',\n\t\t\t\tvalue\n\t\t\t};\n\t\t\tupdateIdentities(modifyProp);\n\t\t},\n\t\t[updateIdentities, items.identityId]\n\t);\n\n\tconst isValidEmail = useMemo(\n\t\t() => replyToEnabledValue && !EMAIL_VALIDATION_REGEX.test(replyToAddress || ''),\n\t\t[replyToEnabledValue, replyToAddress]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<Container\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ all: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Padding horizontal=\"medium\" width=\"100%\">\n\t\t\t\t\t<Text weight=\"bold\">{title}</Text>\n\t\t\t\t</Padding>\n\t\t\t</Container>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Row\n\t\t\t\t\twidth={isExternalAccount ? '100%' : '50%'}\n\t\t\t\t\tpadding={{ right: isExternalAccount ? '' : 'small' }}\n\t\t\t\t>\n\t\t\t\t\t<Input\n\t\t\t\t\t\tlabel={fromDisplayLabel}\n\t\t\t\t\t\tvalue={fromDisplayValue}\n\t\t\t\t\t\tonChange={(ev): void => onChangeFromDisplayValue(ev.target.value)}\n\t\t\t\t\t/>\n\t\t\t\t</Row>\n\t\t\t\t{!isExternalAccount && (\n\t\t\t\t\t<Row width=\"50%\">\n\t\t\t\t\t\t<Select\n\t\t\t\t\t\t\tlabel={fromAddressLabel}\n\t\t\t\t\t\t\tselection={fromAddress}\n\t\t\t\t\t\t\titems={fromAddressArray}\n\t\t\t\t\t\t\tshowCheckbox={false}\n\t\t\t\t\t\t\tbackground=\"gray5\"\n\t\t\t\t\t\t\tonChange={(): unknown => onChangeFromAddress}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Row>\n\t\t\t\t)}\n\t\t\t</Row>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={replyToEnabledLabel}\n\t\t\t\t\tvalue={replyToEnabledValue}\n\t\t\t\t\tonClick={(): void => onClickReplyToEnabled()}\n\t\t\t\t/>\n\t\t\t</Row>\n\t\t\t<Row\n\t\t\t\twidth=\"fill\"\n\t\t\t\tpadding={{ horizontal: 'large', bottom: 'large' }}\n\t\t\t\theight=\"fit\"\n\t\t\t\tbackground=\"gray6\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t>\n\t\t\t\t<Row width=\"50%\" padding={{ right: 'small' }}>\n\t\t\t\t\t<Input\n\t\t\t\t\t\tlabel={replyToDisplayLabel}\n\t\t\t\t\t\tvalue={replyToDisplay}\n\t\t\t\t\t\tdisabled={!replyToEnabledValue}\n\t\t\t\t\t\tonChange={(ev): void => onChangePrefReplyToDisplay(ev.target.value)}\n\t\t\t\t\t/>\n\t\t\t\t</Row>\n\t\t\t\t<Row width=\"50%\">\n\t\t\t\t\t<Dropdown\n\t\t\t\t\t\titems={replyToAddressArray}\n\t\t\t\t\t\tplacement=\"bottom-start\"\n\t\t\t\t\t\tstyle={{ flexGrow: '1' }}\n\t\t\t\t\t\tonClose={(): void => setDropdownOpen(false)}\n\t\t\t\t\t\tonOpen={(): void => setDropdownOpen(true)}\n\t\t\t\t\t\tdisabled={!replyToEnabledValue}\n\t\t\t\t\t>\n\t\t\t\t\t\t<Input\n\t\t\t\t\t\t\tlabel={replyToAddressLabel}\n\t\t\t\t\t\t\tvalue={replyToAddress}\n\t\t\t\t\t\t\tonChange={(ev): void => onChangeReplyToAddress(ev.target.value)}\n\t\t\t\t\t\t\thasError={isValidEmail}\n\t\t\t\t\t\t\tCustomIcon={(): ReactElement => (\n\t\t\t\t\t\t\t\t<Icon icon={dropdownOpen ? 'ArrowUp' : 'ArrowDown'} />\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tdisabled={!replyToEnabledValue}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Dropdown>\n\t\t\t\t</Row>\n\t\t\t</Row>\n\t\t\t<Padding bottom=\"large\" />\n\t\t</>\n\t);\n};\n\nexport default SettingsSentMessages;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { Container } from '@zextras/carbonio-design-system';\nimport styled from 'styled-components';\n\nconst Styler = styled(Container)`\n\t.rw-btn,\n\t.rw-input-reset,\n\t.rw-input,\n\t.rw-dropdown-list-autofill,\n\t.rw-filter-input {\n\t\tcolor: inherit;\n\t\tpadding: 0;\n\t\tmargin: 0;\n\t\tborder: none;\n\t\tbox-shadow: none;\n\t\tbackground: none;\n\t\tbackground-image: none;\n\t\tfont-family: inherit;\n\t\tfont-size: inherit;\n\t\tline-height: inherit;\n\t\t-ms-touch-action: manipulation;\n\t\ttouch-action: manipulation;\n\t}\n\t.rw-btn::-moz-focus-inner {\n\t\tpadding: 0;\n\t\tborder: 0;\n\t}\n\tselect.rw-input {\n\t\ttext-transform: none;\n\t}\n\thtml input[type='button'].rw-input {\n\t\t-webkit-appearance: button;\n\t\tcursor: pointer;\n\t}\n\ttextarea.rw-input {\n\t\toverflow: auto;\n\t\tresize: vertical;\n\t}\n\tbutton[disabled].rw-input,\n\tfieldset[disabled] .rw-input,\n\thtml input[disabled].rw-input {\n\t\tcursor: not-allowed;\n\t}\n\tbutton.rw-input::-moz-focus-inner,\n\tinput.rw-input::-moz-focus-inner {\n\t\tborder: 0;\n\t\tpadding: 0;\n\t}\n\tinput[type='checkbox'],\n\tinput[type='radio'] {\n\t\tbox-sizing: border-box;\n\t\tpadding: 0;\n\t}\n\t${\n\t\t/* @font-face {\n\tfont-family: \"RwWidgets\";\n\tfont-weight: normal;\n\tfont-style: normal;\n\t${/* src: url(\"../fonts/rw-widgets.eot?v=4.1.0\");\n\tsrc: url(\"../fonts/rw-widgets.eot?#iefix&v=4.1.0\") format(\"embedded-opentype\"),\n\turl(\"../fonts/rw-widgets.woff?v=4.1.0\") format(\"woff\"),\n\turl(\"../fonts/rw-widgets.ttf?v=4.1.0\") format(\"truetype\"),\n\t\turl(\"../fonts/rw-widgets.svg?v=4.1.0#fontawesomeregular\") format(\"svg\"); */ ''\n\t};\n\t.rw-i {\n\t\tdisplay: inline-block;\n\t\tcolor: inherit;\n\t\t${/* font-family: RwWidgets; */ ''};\n\t\tfont-style: normal;\n\t\tfont-weight: normal;\n\t\tfont-variant: normal;\n\t\ttext-transform: none;\n\t\t-moz-osx-font-smoothing: grayscale;\n\t\t-webkit-font-smoothing: antialiased;\n\t}\n\t.rw-i-caret-down:before {\n\t\tcontent: '\\e803';\n\t}\n\t.rw-i-caret-up:before {\n\t\tcontent: '\\e800';\n\t}\n\t.rw-i-chevron-left:before {\n\t\tcontent: '\\f104';\n\t}\n\t.rw-i-chevron-right:before {\n\t\tcontent: '\\f105';\n\t}\n\t.rw-i-clock-o:before {\n\t\tcontent: '\\e805';\n\t}\n\t.rw-i-calendar:before {\n\t\tcontent: '\\e804';\n\t}\n\t.rw-i-search:before {\n\t\tcontent: '\\e801';\n\t}\n\t.rw-btn {\n\t\tposition: relative;\n\t\tcolor: #333;\n\t\tdisplay: inline-block;\n\t\ttext-align: center;\n\t\tvertical-align: middle;\n\t\tborder: 1px solid transparent;\n\t\tcursor: pointer;\n\t\toutline: none;\n\t}\n\t.rw-state-readonly .rw-btn,\n\t.rw-state-disabled .rw-btn {\n\t\tcursor: not-allowed;\n\t}\n\t.rw-btn-select {\n\t\topacity: 0.75;\n\t\ttransition: opacity 150ms ease-in;\n\t}\n\t.rw-btn-select:hover,\n\t.rw-state-focus .rw-btn-select,\n\t:hover > .rw-btn-select {\n\t\topacity: 1;\n\t}\n\t.rw-btn-primary {\n\t\twidth: 100%;\n\t\twhite-space: normal;\n\t\tline-height: 2em;\n\t}\n\t.rw-btn-primary:hover {\n\t\tbackground-color: #e6e6e6;\n\t}\n\t.rw-btn-select[disabled],\n\t.rw-btn-primary[disabled],\n\tfieldset[disabled] .rw-btn-select,\n\tfieldset[disabled] .rw-btn-primary {\n\t\tbox-shadow: none;\n\t\tcursor: not-allowed;\n\t\topacity: 0.65;\n\t\tpointer-events: none;\n\t}\n\t.rw-sr {\n\t\tposition: absolute;\n\t\twidth: 1px;\n\t\theight: 1px;\n\t\tmargin: -1px;\n\t\tpadding: 0;\n\t\toverflow: hidden;\n\t\tclip: rect(0, 0, 0, 0);\n\t\tborder: 0;\n\t}\n\t.rw-widget {\n\t\tbackground-clip: border-box;\n\t\tborder: none;\n\t\toutline: none;\n\t\tposition: relative;\n\t\tborder-radius: 2px 2px 0 0;\n\t\twidth: 100%;\n\t}\n\t.rw-widget,\n\t.rw-widget * {\n\t\tbox-sizing: border-box;\n\t}\n\t.rw-widget:before,\n\t.rw-widget *:before,\n\t.rw-widget:after,\n\t.rw-widget *:after {\n\t\tbox-sizing: border-box;\n\t}\n\t.rw-widget > .rw-widget-container {\n\t\twidth: 100%;\n\t\tmargin: 0;\n\t}\n\t.rw-widget-container {\n\t\tbackground-color: ${({ theme }) => theme.palette.gray5.regular};\n\t\tborder-bottom: ${({ theme }) => theme.palette.gray2.regular} 1px solid;\n\t}\n\t.rw-widget-container.rw-state-focus,\n\t.rw-state-focus > .rw-widget-container,\n\t.rw-widget-container.rw-state-focus:hover,\n\t.rw-state-focus > .rw-widget-container:hover {\n\t\tbackground-color: ${({ theme }) => theme.palette.gray5.focus};\n\t\tborder-bottom: ${({ theme }) => theme.palette.primary.regular} 1px solid;\n\t}\n\t.rw-widget-container.rw-state-readonly,\n\t.rw-state-readonly > .rw-widget-container {\n\t\tcursor: not-allowed;\n\t}\n\t.rw-widget-container.rw-state-disabled,\n\t.rw-state-disabled > .rw-widget-container,\n\tfieldset[disabled] .rw-widget-container,\n\t.rw-widget-container.rw-state-disabled:hover,\n\t.rw-state-disabled > .rw-widget-container:hover,\n\tfieldset[disabled] .rw-widget-container:hover,\n\t.rw-widget-container.rw-state-disabled:active,\n\t.rw-state-disabled > .rw-widget-container:active,\n\tfieldset[disabled] .rw-widget-container:active {\n\t\tbox-shadow: none;\n\t\tcursor: not-allowed;\n\t}\n\n\t.rw-datetime-picker {\n\t\theight: 42px;\n\t}\n\t.rw-widget-picker {\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tborder-collapse: separate;\n\t\tdisplay: inline-table;\n\t\theight: 100%;\n\t}\n\t.rw-widget-picker > * {\n\t\tposition: relative;\n\t\tborder: none;\n\t\toutline: none;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tdisplay: table-cell;\n\t}\n\t.rw-widget-picker > .rw-select {\n\t\twidth: ${({ allDay }) => (allDay ? '34px' : '68px')};\n\t\twhite-space: nowrap;\n\t}\n\t.rw-open > .rw-widget-picker {\n\t\tborder-bottom-right-radius: 0;\n\t\tborder-bottom-left-radius: 0;\n\t}\n\t.rw-open-up > .rw-widget-picker {\n\t\tborder-top-right-radius: 0;\n\t\tborder-top-left-radius: 0;\n\t}\n\tfieldset[disabled] .rw-widget-picker,\n\t.rw-state-disabled > .rw-widget-picker {\n\t\tbackground-color: #eee;\n\t}\n\t.rw-multiselect > .rw-widget-picker {\n\t\theight: auto;\n\t}\n\t.rw-select {\n\t\tcursor: pointer;\n\t}\n\t.rw-select > * {\n\t\twidth: 32px;\n\t\theight: 100%;\n\t}\n\t.rw-state-readonly .rw-select,\n\t.rw-state-disabled .rw-select {\n\t\tcursor: not-allowed;\n\t}\n\t.rw-select-bordered {\n\t\tcursor: pointer;\n\t\tborder: none;\n\t\tborder-left: #ccc 1px solid;\n\t}\n\t.rw-select-bordered:hover,\n\t.rw-select-bordered:active {\n\t\tbackground-color: #e6e6e6;\n\t}\n\t.rw-select-bordered:active {\n\t\tbox-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n\t}\n\t.rw-state-disabled .rw-select-bordered,\n\t.rw-state-readonly .rw-select-bordered,\n\tfieldset[disabled] .rw-select-bordered,\n\t.rw-state-disabled .rw-select-bordered:hover,\n\t.rw-state-readonly .rw-select-bordered:hover,\n\tfieldset[disabled] .rw-select-bordered:hover,\n\t.rw-state-disabled .rw-select-bordered:active,\n\t.rw-state-readonly .rw-select-bordered:active,\n\tfieldset[disabled] .rw-select-bordered:active {\n\t\tcursor: not-allowed;\n\t\tbackground-color: inherit;\n\t\tbackground-image: none;\n\t\tbox-shadow: none;\n\t}\n\t.rw-rtl .rw-select-bordered {\n\t\tborder-right: #ccc 1px solid;\n\t\tborder-left: none;\n\t}\n\t.rw-rtl {\n\t\tdirection: rtl;\n\t}\n\t.rw-input-reset,\n\t.rw-input,\n\t.rw-dropdown-list-autofill,\n\t.rw-filter-input {\n\t\toutline: 0;\n\t}\n\t.rw-input-reset::-moz-placeholder {\n\t\tcolor: #999;\n\t\topacity: 1;\n\t}\n\t.rw-input-reset:-ms-input-placeholder {\n\t\tcolor: #999;\n\t}\n\t.rw-input-reset::-webkit-input-placeholder {\n\t\tcolor: #999;\n\t}\n\t.rw-input,\n\t.rw-dropdown-list-autofill,\n\t.rw-filter-input {\n\t\tpadding: 0 0.857em;\n\t}\n\t.rw-input[type='text']::-ms-clear {\n\t\tdisplay: none;\n\t}\n\t.rw-input[disabled],\n\tfieldset[disabled] .rw-input {\n\t\tbox-shadow: none;\n\t\tcursor: not-allowed;\n\t\topacity: 1;\n\t\tbackground-color: #eee;\n\t\tborder-color: #ccc;\n\t}\n\t.rw-input[readonly] {\n\t\tcursor: not-allowed;\n\t}\n\t.rw-i.rw-loading {\n\t\tdisplay: block;\n\t\t${/* background: url(\"../img/loading.gif\") no-repeat center; */ ''};\n\t\tmin-width: 16px;\n\t\twidth: 1.9em;\n\t\theight: 16px;\n\t}\n\t.rw-i.rw-loading:before {\n\t\tcontent: '';\n\t}\n\t.rw-placeholder {\n\t\tcolor: #999;\n\t}\n\t.rw-detect-autofill:-webkit-autofill {\n\t\tanimation-name: react-widgets-autofill-start;\n\t\ttransition: background-color 50000s ease-in-out 0s;\n\t}\n\t.rw-detect-autofill:not(:-webkit-autofill) {\n\t\tanimation-name: react-widgets-autofill-cancel;\n\t}\n\t.rw-webkit-autofill .rw-widget-container,\n\t.rw-input:-webkit-autofill {\n\t\tbackground-color: #faffbd !important;\n\t\tbackground-image: none !important;\n\t\tcolor: #000 !important;\n\t}\n\t.rw-widget-input,\n\t.rw-filter-input {\n\t}\n\t.rw-widget-input.rw-state-focus {\n\t\tbox-shadow: 0 0 8px rgba(102, 175, 233, 0.6), inset 0 1px 1px rgba(0, 0, 0, 0.075);\n\t}\n\t.rw-list {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tlist-style: none;\n\t\tfont-size: 1em;\n\t\toutline: 0;\n\t\toverflow: auto;\n\t\tmax-height: 200px;\n\t}\n\t.rw-list-option {\n\t\t-ms-user-select: none;\n\t\tuser-select: none;\n\t\tcolor: #333;\n\t\tcursor: pointer;\n\t\tborder: 1px solid transparent;\n\t}\n\t.rw-list-option.rw-state-focus,\n\t.rw-list-option.rw-state-focus:hover {\n\t\tbackground-color: transparent;\n\t\tborder-color: #66afe9;\n\t\tcolor: #333;\n\t}\n\t.rw-list-option:hover,\n\t.rw-list-option:hover.rw-state-focus {\n\t\tbackground-color: #e6e6e6;\n\t\tborder-color: #e6e6e6;\n\t\tcolor: #333;\n\t}\n\t.rw-list-option.rw-state-selected,\n\t.rw-list-option.rw-state-selected:hover {\n\t\tbackground-color: #337ab7;\n\t\tborder-color: #337ab7;\n\t\tcolor: white;\n\t}\n\tfieldset[disabled] .rw-list-option,\n\t.rw-list-option.rw-state-disabled,\n\t.rw-list-option.rw-state-readonly {\n\t\tbox-shadow: none;\n\t\tcursor: not-allowed;\n\t\tcolor: #999;\n\t\topacity: 0.7;\n\t}\n\tfieldset[disabled] .rw-list-option:hover,\n\t.rw-list-option.rw-state-disabled:hover,\n\t.rw-list-option.rw-state-readonly:hover {\n\t\tbackground: none;\n\t\tborder-color: transparent;\n\t}\n\t.rw-list-empty,\n\t.rw-list-option,\n\t.rw-list-optgroup {\n\t\tpadding: 0.143em 0.75em;\n\t\toutline: 0;\n\t}\n\t.rw-list-optgroup {\n\t\tfont-weight: bold;\n\t\tpadding-top: 7px;\n\t}\n\t.rw-list-option-create {\n\t\tborder-top: 1px #ccc solid;\n\t}\n\t.rw-dropdown-list-autofill {\n\t\tpadding: 0;\n\t}\n\t.rw-dropdown-list-input {\n\t\tbackground-color: transparent;\n\t\tvertical-align: middle;\n\t\tpadding-right: 0;\n\t\tmax-width: 1px;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t}\n\t.rw-rtl .rw-dropdown-list-input {\n\t\tpadding-right: 0.857em;\n\t\tpadding-left: 0;\n\t}\n\t.rw-filter-input {\n\t\tposition: relative;\n\t\tmargin: 4px;\n\t\tpadding-right: 0;\n\t}\n\t.rw-filter-input .rw-rtl {\n\t\tpadding-right: 0.857em;\n\t\tpadding-left: 0;\n\t}\n\t.rw-filter-input .rw-select,\n\t.rw-filter-input .rw-btn {\n\t\topacity: 0.75;\n\t\tcursor: text;\n\t}\n\t.rw-filter-input > .rw-select,\n\t.rw-filter-input > .rw-select:active,\n\t.rw-filter-input > .rw-select:hover {\n\t\tbackground: none;\n\t\tcursor: initial;\n\t\tbox-shadow: none;\n\t}\n\n\t.rw-number-picker .rw-btn {\n\t\tcursor: pointer;\n\t\theight: calc(1.2145em - 1px);\n\t\t${\n\t\t\t/*\n\t\t margin-top: -1px\\9;\n\theight: 1.2145em\\9;\n*/ 'border: 2px solid red;'\n\t\t};\n\t\tline-height: 1.2145em;\n\t\tline-height: calc(1.2145em - 1px);\n\t\tdisplay: block;\n\t\tborder: none;\n\t}\n\n\t.rw-number-picker .rw-btn:hover,\n\t.rw-number-picker .rw-btn:active {\n\t\tbackground-color: #e6e6e6;\n\t}\n\t.rw-number-picker .rw-btn:active {\n\t\tbox-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n\t}\n\t.rw-state-disabled .rw-number-picker .rw-btn,\n\t.rw-state-readonly .rw-number-picker .rw-btn,\n\tfieldset[disabled] .rw-number-picker .rw-btn,\n\t.rw-state-disabled .rw-number-picker .rw-btn:hover,\n\t.rw-state-readonly .rw-number-picker .rw-btn:hover,\n\tfieldset[disabled] .rw-number-picker .rw-btn:hover,\n\t.rw-state-disabled .rw-number-picker .rw-btn:active,\n\t.rw-state-readonly .rw-number-picker .rw-btn:active,\n\tfieldset[disabled] .rw-number-picker .rw-btn:active {\n\t\tcursor: not-allowed;\n\t\tbackground-color: inherit;\n\t\tbackground-image: none;\n\t\tbox-shadow: none;\n\t}\n\t.rw-number-picker .rw-select {\n\t\tvertical-align: middle;\n\t}\n\t.rw-number-picker .rw-select,\n\t.rw-number-picker .rw-select:hover,\n\t.rw-number-picker .rw-select:active {\n\t\tbox-shadow: none;\n\t}\n\t.rw-calendar-popup {\n\t\tright: auto;\n\t\tmin-width: 0;\n\t\twidth: 18em;\n\t}\n\t.rw-calendar {\n\t\tborder-radius: 4px;\n\t\tbackground-color: #fff;\n\t\tborder: #ccc 1px solid;\n\t\toverflow: hidden;\n\t}\n\t.rw-calendar.rw-popup {\n\t\tborder-color: #ccc;\n\t}\n\t.rw-calendar-now {\n\t\tfont-weight: bold;\n\t}\n\t.rw-calendar-btn-left,\n\t.rw-calendar-btn-right {\n\t\twidth: 12.5%;\n\t}\n\t.rw-calendar-btn-view {\n\t\twidth: 75%;\n\t}\n\t.rw-calendar-footer {\n\t\tborder-top: 1px solid #ccc;\n\t}\n\t.rw-calendar-grid {\n\t\toutline: none;\n\t\theight: 14.28571429em;\n\t\ttable-layout: fixed;\n\t\tborder-collapse: separate;\n\t\tborder-spacing: 0;\n\t\twidth: 100%;\n\t\tbackground-color: #fff;\n\t}\n\t.rw-head-cell {\n\t\ttext-align: center;\n\t\tborder-bottom: 1px solid #ccc;\n\t\tpadding: 0.25em;\n\t}\n\t.rw-cell {\n\t\tcolor: #333;\n\t\tborder-radius: 4px;\n\t\tcursor: pointer;\n\t\tline-height: normal;\n\t\ttext-align: center;\n\t\tborder: 1px solid transparent;\n\t\tpadding: 0.25em;\n\t}\n\t.rw-cell:hover {\n\t\tbackground-color: #e6e6e6;\n\t\tborder-color: #e6e6e6;\n\t\tcolor: #333;\n\t}\n\t.rw-cell.rw-state-focus,\n\t.rw-cell.rw-state-focus:hover {\n\t\tbackground-color: transparent;\n\t\tborder-color: #66afe9;\n\t\tcolor: #333;\n\t}\n\t.rw-cell.rw-state-selected,\n\t.rw-cell.rw-state-selected:hover {\n\t\tbackground-color: #337ab7;\n\t\tborder-color: #337ab7;\n\t\tcolor: white;\n\t}\n\t.rw-cell.rw-state-disabled {\n\t\tcolor: #999;\n\t\topacity: 0.7;\n\t}\n\t.rw-cell.rw-state-disabled:hover {\n\t\tbackground: none;\n\t\tborder-color: transparent;\n\t}\n\t.rw-calendar-month .rw-cell {\n\t\ttext-align: center;\n\t}\n\t.rw-cell-off-range {\n\t\tcolor: #999;\n\t}\n\t.rw-calendar-transition-group {\n\t\tposition: relative;\n\t}\n\t.rw-calendar-transition {\n\t\ttransition: transform 300ms;\n\t\toverflow: hidden;\n\t}\n\t.rw-calendar-transition-top {\n\t\t-ms-transform: translateY(-100%);\n\t\ttransform: translateY(-100%);\n\t}\n\t.rw-calendar-transition-bottom {\n\t\t-ms-transform: translateY(100%);\n\t\ttransform: translateY(100%);\n\t}\n\t.rw-calendar-transition-right {\n\t\t-ms-transform: translateX(-100%);\n\t\ttransform: translateX(-100%);\n\t}\n\t.rw-calendar-transition-left {\n\t\t-ms-transform: translateX(100%);\n\t\ttransform: translateX(100%);\n\t}\n\t.rw-calendar-transition-entering.rw-calendar-transition-top,\n\t.rw-calendar-transition-entered.rw-calendar-transition-top,\n\t.rw-calendar-transition-entering.rw-calendar-transition-bottom,\n\t.rw-calendar-transition-entered.rw-calendar-transition-bottom {\n\t\t-ms-transform: translateY(0);\n\t\ttransform: translateY(0);\n\t}\n\t.rw-calendar-transition-entering.rw-calendar-transition-right,\n\t.rw-calendar-transition-entered.rw-calendar-transition-right,\n\t.rw-calendar-transition-entering.rw-calendar-transition-left,\n\t.rw-calendar-transition-entered.rw-calendar-transition-left {\n\t\t-ms-transform: translateX(0);\n\t\ttransform: translateX(0);\n\t}\n\t.rw-calendar-transition-exiting.rw-calendar-transition-top {\n\t\t-ms-transform: translateY(100%);\n\t\ttransform: translateY(100%);\n\t}\n\t.rw-calendar-transition-exiting.rw-calendar-transition-bottom {\n\t\t-ms-transform: translateY(-100%);\n\t\ttransform: translateY(-100%);\n\t}\n\t.rw-calendar-transition-exiting.rw-calendar-transition-right {\n\t\t-ms-transform: translateX(100%);\n\t\ttransform: translateX(100%);\n\t}\n\t.rw-calendar-transition-exiting.rw-calendar-transition-left {\n\t\t-ms-transform: translateX(-100%);\n\t\ttransform: translateX(-100%);\n\t}\n\t.rw-select-list {\n\t\toverflow: auto;\n\t\tposition: relative;\n\t}\n\t.rw-select-list .rw-list {\n\t\tmax-height: none;\n\t\tfont-size: 1em;\n\t}\n\t.rw-select-list-label {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\tfont-weight: normal;\n\t\tcursor: inherit;\n\t\tpadding-left: 20px;\n\t\tmargin: 0;\n\t}\n\t.rw-rtl .rw-select-list-label {\n\t\tpadding-left: 0;\n\t\tpadding-right: 20px;\n\t}\n\tinput.rw-select-list-input {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\ttop: 50%;\n\t\t-ms-transform: translateY(-50%);\n\t\ttransform: translateY(-50%);\n\t\t${/* top: 0.1em\\9; */ ''};\n\t\tmargin: 0;\n\t\tline-height: normal;\n\t\tcursor: inherit;\n\t}\n\t.rw-rtl input.rw-select-list-input {\n\t\tleft: auto;\n\t\tright: 0;\n\t}\n\t.rw-loading-mask {\n\t\tcontent: '';\n\t\t${/* background: url(\"../img/loader-big.gif\") no-repeat center; */ ''};\n\t\tposition: absolute;\n\t\tbackground-color: #fff;\n\t\tborder-radius: 4px;\n\t\topacity: 0.7;\n\t\ttop: 0;\n\t\tleft: 0;\n\t\theight: 100%;\n\t\twidth: 100%;\n\t}\n\t.rw-multiselect {\n\t\tcursor: text;\n\t}\n\t.rw-multiselect .rw-input-reset {\n\t\theight: calc(2.429em - 2px);\n\t\t${\n\t\t\t/* margin-top: -2px\\9;\n\theight: 2.429em\\9; */ ''\n\t\t};\n\t\tborder-width: 0;\n\t\twidth: auto;\n\t\tmax-width: 100%;\n\t\tpadding: 0 0.857em;\n\t}\n\t.rw-multiselect .rw-select {\n\t\tvertical-align: middle;\n\t}\n\t.rw-multiselect .rw-select,\n\t.rw-multiselect .rw-select:hover,\n\t.rw-multiselect .rw-select:active {\n\t\tbox-shadow: none;\n\t\tbackground: none;\n\t}\n\t.rw-multiselect-taglist {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tlist-style: none;\n\t\tdisplay: inline-block;\n\t\tvertical-align: 0;\n\t\toutline: none;\n\t}\n\t.rw-multiselect-tag {\n\t\tdisplay: inline-table;\n\t\tcolor: inherit;\n\t\tpadding: 0 0.35em 0 0.35em;\n\t\tmargin-left: calc(0.279335em - 1px);\n\t\tmargin-top: 0.279335em;\n\t\tmargin-top: calc(0.279335em - 1px);\n\t\theight: 1.87033em;\n\t\tborder-radius: 3px;\n\t\tbackground-color: #eee;\n\t\tborder: 1px solid #ccc;\n\t\tcursor: default;\n\t\tvertical-align: top;\n\t\ttext-align: center;\n\t\toverflow: hidden;\n\t\tmax-width: 100%;\n\t}\n\t.rw-multiselect-tag > * {\n\t\tdisplay: table-cell;\n\t\tvertical-align: middle;\n\t\theight: 100%;\n\t}\n\t.rw-rtl .rw-multiselect-tag {\n\t\tmargin-left: 0;\n\t\tmargin-right: calc(0.279335em - 1px);\n\t\tpadding: 0 0.35em 0 0.35em;\n\t}\n\t.rw-multiselect-tag.rw-state-focus,\n\t.rw-multiselect-tag.rw-state-focus:hover {\n\t\tbackground-color: transparent;\n\t\tborder-color: #66afe9;\n\t\tcolor: #333;\n\t}\n\t.rw-multiselect-tag.rw-state-readonly,\n\t.rw-multiselect-tag.rw-state-disabled,\n\t.rw-state-readonly .rw-multiselect-tag,\n\t.rw-state-disabled .rw-multiselect-tag,\n\tfieldset[disabled] .rw-multiselect-tag {\n\t\tcursor: not-allowed;\n\t}\n\t.rw-multiselect-tag.rw-state-disabled,\n\t.rw-state-disabled .rw-multiselect-tag,\n\tfieldset[disabled] .rw-multiselect-tag {\n\t\topacity: 0.65;\n\t}\n\tfieldset[disabled] .rw-multiselect-tag {\n\t\tbox-shadow: none;\n\t\tcursor: not-allowed;\n\t}\n\t.rw-multiselect-tag-btn {\n\t\tcolor: inherit;\n\t\tmargin-left: 0.25em;\n\t}\n\t.rw-rtl .rw-multiselect-tag-btn {\n\t\tmargin-left: 0;\n\t\tmargin-right: 0.25em;\n\t}\n\t.rw-autocomplete .rw-select {\n\t\tposition: absolute;\n\t\tdisplay: block;\n\t\twidth: auto;\n\t\ttop: 0;\n\t\tbottom: 0;\n\t\tright: 0;\n\t}\n\t.rw-popup-container {\n\t\tposition: absolute;\n\t\tz-index: 1005;\n\t\ttop: 100%;\n\t\tleft: -6px;\n\t\tright: -6px;\n\t}\n\t.rw-popup-container.rw-dropup {\n\t\ttop: auto;\n\t\tbottom: 100%;\n\t}\n\t.rw-state-focus .rw-popup-container {\n\t\tz-index: 1006;\n\t}\n\t.rw-popup-transition {\n\t\twidth: 100%;\n\t\tmargin-bottom: 6px;\n\t\tpadding: 0 6px;\n\t}\n\t.rw-dropup > .rw-popup-transition {\n\t\tmargin-bottom: 0;\n\t\tmargin-top: 6px;\n\t}\n\t.rw-popup {\n\t\tborder-top-right-radius: 0;\n\t\tborder-top-left-radius: 0;\n\t\tborder-bottom-right-radius: 3px;\n\t\tborder-bottom-left-radius: 3px;\n\t\tbox-shadow: 0 5px 6px rgba(0, 0, 0, 0.2);\n\t\tborder: #ccc 1px solid;\n\t\tbackground: #fff;\n\t}\n\t.rw-dropup .rw-popup {\n\t\tborder-bottom-right-radius: 0;\n\t\tborder-bottom-left-radius: 0;\n\t\tborder-top-right-radius: 3px;\n\t\tborder-top-left-radius: 3px;\n\t\tbox-shadow: 0 -2px 6px rgba(0, 0, 0, 0.2);\n\t}\n\t.rw-popup-transition {\n\t\ttransition: transform 200ms;\n\t}\n\t.rw-popup-transition-entering {\n\t\toverflow: hidden;\n\t}\n\t.rw-popup-transition-entering .rw-popup-transition {\n\t\t-ms-transform: translateY(0);\n\t\ttransform: translateY(0);\n\t\ttransition-timing-function: ease-out;\n\t}\n\t.rw-popup-transition-exiting .rw-popup-transition {\n\t\ttransition-timing-function: ease-in;\n\t}\n\t.rw-popup-transition-exiting,\n\t.rw-popup-transition-exited {\n\t\toverflow: hidden;\n\t}\n\t.rw-popup-transition-exiting .rw-popup-transition,\n\t.rw-popup-transition-exited .rw-popup-transition {\n\t\t-ms-transform: translateY(-100%);\n\t\ttransform: translateY(-100%);\n\t}\n\t.rw-popup-transition-exiting.rw-dropup .rw-popup-transition,\n\t.rw-popup-transition-exited.rw-dropup .rw-popup-transition {\n\t\t-ms-transform: translateY(100%);\n\t\ttransform: translateY(100%);\n\t}\n\t.rw-popup-transition-exited {\n\t\tdisplay: none;\n\t}\n\t.rw-state-disabled {\n\t\tbox-shadow: none;\n\t\tcursor: not-allowed;\n\t}\n\n\tcolor: ${({ theme }) => theme.palette.text.regular};\n\tfont-family: ${({ theme }) => theme.fonts.default};\n\tfont-size: ${({ theme }) => theme.sizes.font.medium};\n\tfont-weight: ${({ theme }) => theme.fonts.weight.regular};\n`;\n\nexport default Styler;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useState, useCallback, FC, useEffect } from 'react';\nimport { Container, Checkbox, Text, Icon, Padding } from '@zextras/carbonio-design-system';\n\nimport moment from 'moment';\nimport DateTimePicker from 'react-widgets/lib/DateTimePicker';\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport momentLocalizer from 'react-widgets-moment';\nimport { useTranslation } from 'react-i18next';\nimport { AccountSettings } from '../../../types';\nimport Heading from './settings-heading';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport Styler from './date-picker-style';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport { changeDateEvent, getDateEvent, startOfDate, endOfDate } from './utils';\n\nmomentLocalizer();\n\nconst DateTimeSelect: FC<{\n\tsettings: AccountSettings;\n\taddMod: (type: 'prefs' | 'props', key: string, value: { value: any; app: string }) => void;\n\tsendAutoReply: boolean;\n}> = ({ settings, addMod, sendAutoReply }) => {\n\tconst { t } = useTranslation();\n\tconst [dateDisabled, setDateDisabled] = useState<boolean>(false);\n\tconst [sendAutoReplyTimePeriod, setSendAutoReplyTimePeriod] = useState<boolean>(\n\t\t!!(\n\t\t\tsettings.prefs.zimbraPrefOutOfOfficeFromDate && settings.prefs.zimbraPrefOutOfOfficeUntilDate\n\t\t)\n\t);\n\n\tconst [dateZimbraPrefOutOfOfficeFromDate, setZimbraPrefOutOfOfficeFromDate] = useState<string>(\n\t\tsettings.prefs.zimbraPrefOutOfOfficeFromDate as string\n\t);\n\n\tconst [dateZimbraPrefOutOfOfficeUntilDate, setZimbraPrefOutOfOfficeUntilDate] = useState<string>(\n\t\tsettings.prefs.zimbraPrefOutOfOfficeUntilDate as string\n\t);\n\tconst [allDay, setAllDay] = useState<boolean>(false);\n\tconst [allDayDisabled, setAllDayDisabled] = useState<boolean>(false);\n\tconst [timeDisabled, setTimeDisabled] = useState<boolean>(false);\n\tconst updatePrefs = useCallback(\n\t\t(v, p) => {\n\t\t\taddMod('prefs', p, v);\n\t\t},\n\t\t[addMod]\n\t);\n\n\tuseEffect(() => {\n\t\tif (sendAutoReply) {\n\t\t\tif (sendAutoReplyTimePeriod) {\n\t\t\t\tsetTimeDisabled(false);\n\t\t\t\tsetAllDayDisabled(false);\n\t\t\t\tsetDateDisabled(false);\n\t\t\t} else {\n\t\t\t\tsetAllDayDisabled(true);\n\t\t\t\tsetTimeDisabled(true);\n\t\t\t\tsetDateDisabled(true);\n\t\t\t}\n\t\t\tif (allDay) {\n\t\t\t\tsetZimbraPrefOutOfOfficeFromDate(startOfDate(dateZimbraPrefOutOfOfficeFromDate));\n\t\t\t\tupdatePrefs(\n\t\t\t\t\tstartOfDate(dateZimbraPrefOutOfOfficeFromDate),\n\t\t\t\t\t'zimbraPrefOutOfOfficeFromDate'\n\t\t\t\t);\n\t\t\t\tsetZimbraPrefOutOfOfficeUntilDate(endOfDate(dateZimbraPrefOutOfOfficeUntilDate));\n\t\t\t\tupdatePrefs(\n\t\t\t\t\tendOfDate(dateZimbraPrefOutOfOfficeUntilDate),\n\t\t\t\t\t'zimbraPrefOutOfOfficeUntilDate'\n\t\t\t\t);\n\n\t\t\t\tsetTimeDisabled(true);\n\t\t\t}\n\t\t} else {\n\t\t\tsetDateDisabled(true);\n\t\t\tsetTimeDisabled(true);\n\t\t\tsetAllDay(false);\n\t\t\tsetAllDayDisabled(true);\n\t\t}\n\t}, [\n\t\tsettings.prefs.zimbraPrefOutOfOfficeFromDate,\n\t\tupdatePrefs,\n\t\tdateZimbraPrefOutOfOfficeFromDate,\n\t\tdateZimbraPrefOutOfOfficeUntilDate,\n\t\tallDay,\n\t\tsendAutoReply,\n\t\tsendAutoReplyTimePeriod\n\t]);\n\tconst toggleSendAutoReplyTimePeriod = (): void => {\n\t\tsetSendAutoReplyTimePeriod(!sendAutoReplyTimePeriod);\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<Heading title={t('settings.out_of_office.headings.time_period', 'Time Period')} />\n\t\t\t<Checkbox\n\t\t\t\tlabel={t(\n\t\t\t\t\t'settings.out_of_office.labels.send_auto_reply_period',\n\t\t\t\t\t'Send auto-replies during the following period:'\n\t\t\t\t)}\n\t\t\t\tvalue={sendAutoReplyTimePeriod}\n\t\t\t\tonClick={toggleSendAutoReplyTimePeriod}\n\t\t\t\tdisabled={!sendAutoReply}\n\t\t\t/>\n\t\t\t<Styler orientation=\"horizontal\" allDay height=\"fit\" mainAlignment=\"space-between\">\n\t\t\t\t<Container\n\t\t\t\t\tcrossAlignment=\"flex-start\"\n\t\t\t\t\tstyle={{ maxWidth: '50%' }}\n\t\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t\t>\n\t\t\t\t\t<Padding bottom=\"extrasmall\">\n\t\t\t\t\t\t<Text size=\"small\">{t('settings.out_of_office.labels.start_date', 'Start Date')}</Text>\n\t\t\t\t\t</Padding>\n\t\t\t\t\t<DateTimePicker\n\t\t\t\t\t\tdisabled={dateDisabled}\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tdateZimbraPrefOutOfOfficeFromDate\n\t\t\t\t\t\t\t\t? getDateEvent(dateZimbraPrefOutOfOfficeFromDate)\n\t\t\t\t\t\t\t\t: new Date()\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttime={false}\n\t\t\t\t\t\tonChange={(value: any): void => {\n\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeFromDate(changeDateEvent(value));\n\t\t\t\t\t\t\tupdatePrefs(changeDateEvent(value), 'zimbraPrefOutOfOfficeFromDate');\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tmoment(value).diff(getDateEvent(dateZimbraPrefOutOfOfficeUntilDate), 'minutes') >= 0\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeUntilDate(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).add(1, 'd').valueOf()))\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tupdatePrefs(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).add(1, 'd').valueOf())),\n\t\t\t\t\t\t\t\t\t'zimbraPrefOutOfOfficeUntilDate'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tdateIcon={\n\t\t\t\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t\t\t\t<Icon icon=\"CalendarOutline\" />\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttimeIcon={\n\t\t\t\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t\t\t\t<Icon icon=\"ClockOutline\" />\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Container>\n\t\t\t\t<Container\n\t\t\t\t\tcrossAlignment=\"flex-start\"\n\t\t\t\t\tstyle={{ maxWidth: '50%' }}\n\t\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t\t>\n\t\t\t\t\t<Padding bottom=\"extrasmall\">\n\t\t\t\t\t\t<Text size=\"small\">{t('settings.out_of_office.labels.end_date', 'End Date')}</Text>\n\t\t\t\t\t</Padding>\n\t\t\t\t\t<DateTimePicker\n\t\t\t\t\t\tdisabled={dateDisabled}\n\t\t\t\t\t\tinputProps={{ readOnly: true }}\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tdateZimbraPrefOutOfOfficeUntilDate\n\t\t\t\t\t\t\t\t? getDateEvent(dateZimbraPrefOutOfOfficeUntilDate)\n\t\t\t\t\t\t\t\t: new Date()\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttime={false}\n\t\t\t\t\t\tonChange={(value: any): void => {\n\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeUntilDate(changeDateEvent(value));\n\t\t\t\t\t\t\tupdatePrefs(changeDateEvent(value), 'zimbraPrefOutOfOfficeUntilDate');\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tmoment(value).diff(getDateEvent(dateZimbraPrefOutOfOfficeFromDate), 'minutes') <= 0\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeFromDate(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).subtract(1, 'd').valueOf()))\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tupdatePrefs(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).subtract(1, 'd').valueOf())),\n\t\t\t\t\t\t\t\t\t'zimbraPrefOutOfOfficeFromDate'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tdateIcon={\n\t\t\t\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t\t\t\t<Icon icon=\"CalendarOutline\" />\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttimeIcon={\n\t\t\t\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t\t\t\t<Icon icon=\"ClockOutline\" />\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Container>\n\t\t\t</Styler>\n\n\t\t\t<Container crossAlignment=\"flex-start\">\n\t\t\t\t<Checkbox\n\t\t\t\t\tdisabled={allDayDisabled}\n\t\t\t\t\tlabel={t('settings.out_of_office.labels.all_day', 'All Day:')}\n\t\t\t\t\tvalue={allDay}\n\t\t\t\t\tonClick={(): void => {\n\t\t\t\t\t\tsetAllDay(!allDay);\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t</Container>\n\t\t\t<Styler orientation=\"horizontal\" allDay height=\"fit\" mainAlignment=\"space-between\">\n\t\t\t\t<Container\n\t\t\t\t\tcrossAlignment=\"flex-start\"\n\t\t\t\t\tstyle={{ maxWidth: '50%' }}\n\t\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t\t>\n\t\t\t\t\t<Padding bottom=\"extrasmall\">\n\t\t\t\t\t\t<Text size=\"small\">{t('settings.out_of_office.labels.start_time', 'Start Time:')}</Text>\n\t\t\t\t\t</Padding>\n\t\t\t\t\t<DateTimePicker\n\t\t\t\t\t\tdisabled={timeDisabled}\n\t\t\t\t\t\tdate={false}\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tdateZimbraPrefOutOfOfficeFromDate\n\t\t\t\t\t\t\t\t? getDateEvent(dateZimbraPrefOutOfOfficeFromDate)\n\t\t\t\t\t\t\t\t: new Date()\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttime\n\t\t\t\t\t\tonChange={(value: any): void => {\n\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeFromDate(changeDateEvent(value));\n\t\t\t\t\t\t\tupdatePrefs(changeDateEvent(value), 'zimbraPrefOutOfOfficeFromDate');\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tmoment(value).diff(getDateEvent(dateZimbraPrefOutOfOfficeUntilDate), 'minutes') >= 0\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeUntilDate(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).add(1, 'd').valueOf()))\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tupdatePrefs(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).add(1, 'd').valueOf())),\n\t\t\t\t\t\t\t\t\t'zimbraPrefOutOfOfficeUntilDate'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tdateIcon={\n\t\t\t\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t\t\t\t<Icon icon=\"CalendarOutline\" />\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttimeIcon={\n\t\t\t\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t\t\t\t<Icon icon=\"ClockOutline\" />\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Container>\n\t\t\t\t<Container\n\t\t\t\t\tcrossAlignment=\"flex-start\"\n\t\t\t\t\tstyle={{ maxWidth: '50%' }}\n\t\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t\t>\n\t\t\t\t\t<Padding bottom=\"extrasmall\">\n\t\t\t\t\t\t<Text size=\"small\">{t('settings.out_of_office.labels.end_time', 'End Time:')}</Text>\n\t\t\t\t\t</Padding>\n\t\t\t\t\t<DateTimePicker\n\t\t\t\t\t\tdisabled={timeDisabled}\n\t\t\t\t\t\tdate={false}\n\t\t\t\t\t\tvalue={\n\t\t\t\t\t\t\tdateZimbraPrefOutOfOfficeUntilDate\n\t\t\t\t\t\t\t\t? getDateEvent(dateZimbraPrefOutOfOfficeUntilDate)\n\t\t\t\t\t\t\t\t: new Date()\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttime\n\t\t\t\t\t\tonChange={(value: any): void => {\n\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeUntilDate(changeDateEvent(value));\n\t\t\t\t\t\t\tupdatePrefs(changeDateEvent(value), 'zimbraPrefOutOfOfficeUntilDate');\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tmoment(value).diff(getDateEvent(dateZimbraPrefOutOfOfficeFromDate), 'minutes') <= 0\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\tsetZimbraPrefOutOfOfficeFromDate(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).subtract(1, 'd').valueOf()))\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tupdatePrefs(\n\t\t\t\t\t\t\t\t\tchangeDateEvent(new Date(moment(value).subtract(1, 'd').valueOf())),\n\t\t\t\t\t\t\t\t\t'zimbraPrefOutOfOfficeFromDate'\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}}\n\t\t\t\t\t\ttimeIcon={\n\t\t\t\t\t\t\t<Padding all=\"small\">\n\t\t\t\t\t\t\t\t<Icon icon=\"ClockOutline\" />\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Container>\n\t\t\t</Styler>\n\t\t</>\n\t);\n};\n\nexport default DateTimeSelect;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useMemo, useContext, useCallback } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { FormSubSection, Select } from '@zextras/carbonio-design-system';\nimport { find } from 'lodash';\nimport { ThemeCallbacksContext } from '../../../boot/theme-provider';\nimport { AccountSettings, DRPropValues } from '../../../../types';\nimport { DR_VALUES, SHELL_APP_ID } from '../../../constants';\nimport { themeSubSection } from '../../general-settings-sub-sections';\n\nconst AppearanceSettings: FC<{\n\tsettings: AccountSettings;\n\taddMod: (type: 'prefs' | 'props', key: string, value: { value: any; app: string }) => void;\n}> = ({ settings, addMod }) => {\n\tconst { setDarkReaderState } = useContext(ThemeCallbacksContext);\n\tconst currentDRMSetting = useMemo(\n\t\t() =>\n\t\t\tfind(settings.props, { name: 'zappDarkreaderMode', zimlet: SHELL_APP_ID })\n\t\t\t\t?._content as DRPropValues,\n\t\t[settings]\n\t);\n\tconst [t] = useTranslation();\n\tconst items = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tlabel: t('settings.general.theme_auto', 'Auto'),\n\t\t\t\tvalue: 'auto'\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: t('settings.general.theme_enabled', 'Enabled'),\n\t\t\t\tvalue: 'enabled'\n\t\t\t},\n\t\t\t{\n\t\t\t\tlabel: t('settings.general.theme_disabled', 'Disabled'),\n\t\t\t\tvalue: 'disabled'\n\t\t\t}\n\t\t],\n\t\t[t]\n\t);\n\tconst defaultSelection = useMemo(\n\t\t() => find(items, { value: currentDRMSetting }),\n\t\t[currentDRMSetting, items]\n\t);\n\tconst onSelectionChange = useCallback(\n\t\t(v) => {\n\t\t\tif (DR_VALUES.includes(v) && v !== currentDRMSetting) {\n\t\t\t\tsetDarkReaderState(v);\n\t\t\t\taddMod('props', 'zappDarkreaderMode', { app: SHELL_APP_ID, value: v });\n\t\t\t}\n\t\t},\n\t\t[addMod, currentDRMSetting, setDarkReaderState]\n\t);\n\tconst subSection = useMemo(() => themeSubSection(t), [t]);\n\treturn (\n\t\t<FormSubSection\n\t\t\tlabel={subSection.label}\n\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\twidth=\"50%\"\n\t\t\tid={subSection.id}\n\t\t>\n\t\t\t<Select\n\t\t\t\titems={items}\n\t\t\t\tselection={defaultSelection}\n\t\t\t\tdefaultSelection={defaultSelection}\n\t\t\t\tlabel={t('settings.general.dark_mode', 'Dark Mode')}\n\t\t\t\tonChange={onSelectionChange}\n\t\t\t/>\n\t\t</FormSubSection>\n\t);\n};\n\nexport default AppearanceSettings;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useCallback, useMemo } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { FormSubSection, ButtonOld as Button } from '@zextras/carbonio-design-system';\nimport { logout } from '../../../network/logout';\nimport { accountSubSection } from '../../general-settings-sub-sections';\n\nconst Logout: FC = () => {\n\tconst [t] = useTranslation();\n\tconst onClick = useCallback(() => {\n\t\tlogout();\n\t}, []);\n\tconst sectionTitle = useMemo(() => accountSubSection(t), [t]);\n\treturn (\n\t\t<FormSubSection\n\t\t\tlabel={sectionTitle.label}\n\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\twidth=\"50%\"\n\t\t\tid={sectionTitle.id}\n\t\t>\n\t\t\t<Button label={t('settings.general.account_logout', 'Logout')} onClick={onClick} />\n\t\t</FormSubSection>\n\t);\n};\n\nexport default Logout;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable @typescript-eslint/ban-ts-comment */\n\nimport React, { FC, useContext, useMemo } from 'react';\nimport { useTranslation } from 'react-i18next';\nimport {\n\tFormSubSection,\n\tContainer,\n\tText,\n\tBadge,\n\tDivider,\n\tTooltip,\n\tThemeContext\n} from '@zextras/carbonio-design-system';\nimport { map } from 'lodash';\nimport { useAppList } from '../../../store/app/hooks';\n\nimport { SEARCH_APP_ID, SETTINGS_APP_ID } from '../../../constants/index';\nimport { CarbonioModule } from '../../../../types';\nimport { versionsSubSection } from '../../general-settings-sub-sections';\n\nconst ModuleVersionSettings: FC = () => {\n\tconst apps = useAppList();\n\tconst [t] = useTranslation();\n\tconst theme = useContext(ThemeContext);\n\n\tconst copyToClipboard: any = (e: any) => {\n\t\te.preventDefault();\n\t\tnavigator.clipboard.writeText(e.target.innerText);\n\t};\n\n\tconst filteredList = useMemo(\n\t\t() => apps.filter((app) => app.name !== SEARCH_APP_ID && app.name !== SETTINGS_APP_ID),\n\t\t[apps]\n\t);\n\tconst sectionTitle = useMemo(() => versionsSubSection(t), [t]);\n\treturn (\n\t\t<>\n\t\t\t<FormSubSection\n\t\t\t\tlabel={sectionTitle.label}\n\t\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\t\twidth=\"50%\"\n\t\t\t\tid={sectionTitle.id}\n\t\t\t>\n\t\t\t\t{map(filteredList, (app: CarbonioModule) => (\n\t\t\t\t\t<Container key={app.name} padding={{ horizontal: 'large', vertical: 'small' }}>\n\t\t\t\t\t\t<Container orientation=\"horizontal\" mainAlignment=\"space-between\">\n\t\t\t\t\t\t\t<Text>\n\t\t\t\t\t\t\t\t{app.display} ({app.name})\n\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t<Tooltip placement=\"top\" label={t('label.click_to_copy', 'Click to copy')}>\n\t\t\t\t\t\t\t\t<Text style={{ cursor: 'pointer' }} onClick={(e: any): any => copyToClipboard(e)}>\n\t\t\t\t\t\t\t\t\tVersion: {app.version}\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</Container>\n\t\t\t\t\t\t<Container\n\t\t\t\t\t\t\torientation=\"horizontal\"\n\t\t\t\t\t\t\tmainAlignment=\"space-between\"\n\t\t\t\t\t\t\tpadding={{ top: 'extrasmall', bottom: 'medium' }}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Text color=\"secondary\">{app.description}</Text>\n\t\t\t\t\t\t\t<Badge\n\t\t\t\t\t\t\t\tvalue=\"Active\"\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\t\t\tbackgroundColor: theme.palette.success.regular,\n\t\t\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\t\t\tcolor: theme.palette.gray6.regular\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t></Badge>\n\t\t\t\t\t\t</Container>\n\t\t\t\t\t\t<Divider color=\"gray2\" />\n\t\t\t\t\t</Container>\n\t\t\t\t))}\n\t\t\t</FormSubSection>\n\t\t</>\n\t);\n};\n\nexport default ModuleVersionSettings;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useState, useCallback, FC, useEffect, useMemo } from 'react';\nimport {\n\tContainer,\n\tFormSubSection,\n\tCheckbox,\n\tSelect,\n\tPadding\n} from '@zextras/carbonio-design-system';\nimport styled from 'styled-components';\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport momentLocalizer from 'react-widgets-moment';\nimport { useTranslation } from 'react-i18next';\nimport { find } from 'lodash';\nimport { AccountSettings } from '../../../../types';\nimport Heading from '../settings-heading';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport DateTimeSelect from '../date-time-select-view';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport {\n\tItemsExternalSenders,\n\tgetExternalSendersPrefsData,\n\tItemsOutOfOfficeStatus,\n\tgetOutOfOfficeStatusPrefsData,\n\tItemsSendAutoReplies\n} from '../utils';\nimport { outOfOfficeSubSection } from '../../general-settings-sub-sections';\n\nconst TextArea = styled.textarea`\n\tbox-sizing: border-box;\n\tpadding: 10px;\n\tmin-height: 150px;\n\tbackground: ${({ theme }): string => theme.palette.gray5.regular};\n\tflex-grow: 1;\n\twidth: 100%;\n\tborder: none;\n\tresize: vertical;\n\t& :focus,\n\t:active {\n\t\tbox-shadow: none;\n\t\tborder: none;\n\t\toutline: none;\n\t}\n`;\n\nmomentLocalizer();\n\nconst OutOfOfficeView: FC<{\n\tsettings: AccountSettings;\n\taddMod: (type: 'prefs' | 'props', key: string, value: { value: any; app: string }) => void;\n}> = ({ settings, addMod }) => {\n\tconst { t } = useTranslation();\n\tconst [sendAutoReply, setSendAutoReply] = useState<boolean>(\n\t\tsettings.prefs.zimbraPrefOutOfOfficeReplyEnabled === 'TRUE'\n\t);\n\tconst [inputZimbraPrefOutOfOfficeReply, setInputZimbraPrefOutOfOfficeReply] = useState<string>(\n\t\tsettings.prefs.zimbraPrefOutOfOfficeReply as string\n\t);\n\n\tconst [inputZimbraPrefOutOfOfficeExternalReply, setInputZimbraPrefOutOfOfficeExternalReply] =\n\t\tuseState<string>(settings.prefs.zimbraPrefOutOfOfficeExternalReply as string);\n\n\tconst [createAppointmentDisabled, setCreateAppointmentDisabled] = useState<boolean>(false);\n\tconst [externalReplyInput, setExternalReplyInput] = useState<boolean>(\n\t\tsettings.prefs.zimbraPrefOutOfOfficeExternalReplyEnabled === 'TRUE'\n\t);\n\n\tconst [createAppointment, setCreateAppointment] = useState<boolean>(true);\n\n\tconst updatePrefs = useCallback(\n\t\t(v, p) => {\n\t\t\taddMod('prefs', p, v);\n\t\t},\n\t\t[addMod]\n\t);\n\n\tuseEffect(() => {\n\t\tif (sendAutoReply) {\n\t\t\tsetCreateAppointmentDisabled(false);\n\t\t} else {\n\t\t\tsetCreateAppointmentDisabled(true);\n\t\t}\n\t}, [\n\t\tsendAutoReply,\n\t\tsettings.prefs.zimbraPrefOutOfOfficeFromDate,\n\t\tupdatePrefs,\n\t\tsetCreateAppointment,\n\t\tsetCreateAppointmentDisabled\n\t]);\n\n\tconst externalSendersHandler = (v: any): void => {\n\t\tsetExternalReplyInput(false);\n\n\t\tif (v === 'SEND_AUTO_REPLY') {\n\t\t\tupdatePrefs('FALSE', 'zimbraPrefOutOfOfficeSuppressExternalReply');\n\t\t\tupdatePrefs('FALSE', 'zimbraPrefOutOfOfficeExternalReplyEnabled');\n\t\t\tupdatePrefs('INSD', 'zimbraPrefExternalSendersType');\n\t\t} else if (v === 'SEND_NOT_IN_ORG') {\n\t\t\tupdatePrefs('ALLNOTINAB', 'zimbraPrefExternalSendersType');\n\t\t\tupdatePrefs('TRUE', 'zimbraPrefOutOfOfficeExternalReplyEnabled');\n\t\t\tupdatePrefs('FALSE', 'zimbraPrefOutOfOfficeSuppressExternalReply');\n\t\t\tsetExternalReplyInput(true);\n\t\t} else if (v === 'SHOW_EXTERNAL_INPUT') {\n\t\t\tupdatePrefs('ALL', 'zimbraPrefExternalSendersType');\n\t\t\tupdatePrefs('FALSE', 'zimbraPrefOutOfOfficeExternalReplyEnabled');\n\t\t\tupdatePrefs('INSD', 'zimbraPrefOutOfOfficeSuppressExternalReply');\n\t\t\tsetExternalReplyInput(true);\n\t\t} else {\n\t\t\tupdatePrefs('TRUE', 'zimbraPrefOutOfOfficeSuppressExternalReply');\n\t\t\tupdatePrefs('INAB', 'zimbraPrefExternalSendersType');\n\t\t\tupdatePrefs('FALSE', 'zimbraPrefOutOfOfficeExternalReplyEnabled');\n\t\t}\n\t};\n\n\tconst createAppointmentAsHandler = (v: any): void => {\n\t\tupdatePrefs(v, 'zimbraPrefOutOfOfficeFreeBusyStatus');\n\t};\n\n\tconst itemsSendAutoReplies = useMemo(() => ItemsSendAutoReplies(t), [t]);\n\tconst itemsExternalSenders = useMemo(() => ItemsExternalSenders(t), [t]);\n\tconst itemsOutOfOfficeStatus = useMemo(() => ItemsOutOfOfficeStatus(t), [t]);\n\tconst sectionTitle = useMemo(() => outOfOfficeSubSection(t), [t]);\n\tconst defaultSendAutoreply = useMemo(\n\t\t() => getExternalSendersPrefsData(settings, 'label', t),\n\t\t[settings, t]\n\t);\n\tconst defaultOutOfOfficeStatus = useMemo(\n\t\t() => getOutOfOfficeStatusPrefsData(settings, t),\n\t\t[settings, t]\n\t);\n\tconst selectedItemSendAutoReplies = useMemo(\n\t\t() => find(itemsSendAutoReplies, (item) => item && (item.value === 'TRUE') === sendAutoReply),\n\t\t[sendAutoReply, itemsSendAutoReplies]\n\t);\n\n\treturn (\n\t\t<FormSubSection\n\t\t\tlabel={sectionTitle.label}\n\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\twidth=\"50%\"\n\t\t\tid={sectionTitle.id}\n\t\t>\n\t\t\t<Container crossAlignment=\"baseline\" padding={{ all: 'small' }}>\n\t\t\t\t<Select\n\t\t\t\t\titems={itemsSendAutoReplies}\n\t\t\t\t\tbackground=\"gray5\"\n\t\t\t\t\tlabel={t('label.out_of_office', 'Out of Office')}\n\t\t\t\t\tonChange={(value: any): void => {\n\t\t\t\t\t\tif (value && (value === 'TRUE') !== sendAutoReply) {\n\t\t\t\t\t\t\tupdatePrefs(value, 'zimbraPrefOutOfOfficeReplyEnabled');\n\t\t\t\t\t\t\tsetSendAutoReply(value === 'TRUE');\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t\tselection={selectedItemSendAutoReplies}\n\t\t\t\t/>\n\t\t\t\t<Padding top=\"small\" width=\"100%\">\n\t\t\t\t\t<TextArea\n\t\t\t\t\t\tvalue={inputZimbraPrefOutOfOfficeReply || ''}\n\t\t\t\t\t\tdisabled={!sendAutoReply}\n\t\t\t\t\t\tplaceholder={t(\n\t\t\t\t\t\t\t'settings.out_of_office.labels.auto_reply_message',\n\t\t\t\t\t\t\t'Auto-Reply Message:'\n\t\t\t\t\t\t)}\n\t\t\t\t\t\tonChange={(ev): void => {\n\t\t\t\t\t\t\tsetInputZimbraPrefOutOfOfficeReply(ev.target.value);\n\t\t\t\t\t\t\tupdatePrefs(ev.target.value, 'zimbraPrefOutOfOfficeReply');\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t</Padding>\n\t\t\t\t<Padding top=\"small\" width=\"100%\">\n\t\t\t\t\t<Select\n\t\t\t\t\t\tdisabled={!sendAutoReply}\n\t\t\t\t\t\titems={itemsExternalSenders}\n\t\t\t\t\t\tbackground=\"gray5\"\n\t\t\t\t\t\tlabel={t('settings.out_of_office.labels.external_senders', 'External Senders')}\n\t\t\t\t\t\tonChange={(value: unknown): void => {\n\t\t\t\t\t\t\tif (value && value !== defaultSendAutoreply?.value) externalSendersHandler(value);\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tselection={defaultSendAutoreply}\n\t\t\t\t\t/>\n\t\t\t\t</Padding>\n\t\t\t\t{externalReplyInput && (\n\t\t\t\t\t<Padding top=\"small\" width=\"100%\">\n\t\t\t\t\t\t<TextArea\n\t\t\t\t\t\t\tvalue={inputZimbraPrefOutOfOfficeExternalReply || ''}\n\t\t\t\t\t\t\tdisabled={!sendAutoReply}\n\t\t\t\t\t\t\tplaceholder={t(\n\t\t\t\t\t\t\t\t'settings.out_of_office.labels.auto_reply_message_external',\n\t\t\t\t\t\t\t\t'Auto-Reply Message for External senders:'\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tonChange={(ev): void => {\n\t\t\t\t\t\t\t\tsetInputZimbraPrefOutOfOfficeExternalReply(ev.target.value);\n\t\t\t\t\t\t\t\tupdatePrefs(ev.target.value, 'zimbraPrefOutOfOfficeExternalReply');\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Padding>\n\t\t\t\t)}\n\t\t\t</Container>\n\t\t\t<Container crossAlignment=\"baseline\" padding={{ all: 'small' }}>\n\t\t\t\t<DateTimeSelect settings={settings} addMod={addMod} sendAutoReply={sendAutoReply} />\n\t\t\t\t<Container crossAlignment=\"flex-start\">\n\t\t\t\t\t<Heading\n\t\t\t\t\t\ttitle={t('settings.out_of_office.headings.create_appointment', 'Calendar Appointment')}\n\t\t\t\t\t/>\n\t\t\t\t\t<Checkbox\n\t\t\t\t\t\tdisabled={createAppointmentDisabled}\n\t\t\t\t\t\tlabel={t('settings.out_of_office.labels.create_appointment', 'Create Appointment:')}\n\t\t\t\t\t\tvalue={createAppointment}\n\t\t\t\t\t\tonClick={(value: any): void => {\n\t\t\t\t\t\t\tsetCreateAppointment(!createAppointment);\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t</Container>\n\t\t\t\t<Container crossAlignment=\"baseline\" padding={{ all: 'small' }}>\n\t\t\t\t\t<Padding top=\"small\" width=\"50%\">\n\t\t\t\t\t\t<Select\n\t\t\t\t\t\t\tdisabled={createAppointmentDisabled}\n\t\t\t\t\t\t\titems={itemsOutOfOfficeStatus}\n\t\t\t\t\t\t\tbackground=\"gray5\"\n\t\t\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t\t\t'settings.out_of_office.labels.out_of_office_status',\n\t\t\t\t\t\t\t\t'Out Of Office Status:'\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\tonChange={(value: unknown): void => {\n\t\t\t\t\t\t\t\tif (value && value !== defaultOutOfOfficeStatus?.value)\n\t\t\t\t\t\t\t\t\tcreateAppointmentAsHandler(value);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tselection={defaultOutOfOfficeStatus}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Padding>\n\t\t\t\t</Container>\n\t\t\t</Container>\n\t\t</FormSubSection>\n\t);\n};\n\nexport default OutOfOfficeView;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useMemo } from 'react';\nimport { Quota, Container, FormSubSection, Text, Tooltip } from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { useUserSettings } from '../../../store/account/hooks';\nimport { useAccountStore } from '../../../store/account/store';\nimport { quotaSubSection } from '../../general-settings-sub-sections';\n\ninterface UserQuotaProps {\n\tmobileView: boolean;\n}\n\nconst UserQuota: FC<UserQuotaProps> = ({ mobileView }) => {\n\tconst [t] = useTranslation();\n\n\tconst settings = useUserSettings();\n\tconst used = useAccountStore((s) => s.usedQuota);\n\tconst quota = useMemo(() => {\n\t\tconst userQuota = Number(settings?.attrs?.zimbraMailQuota);\n\t\tif (used && userQuota && userQuota > 0) {\n\t\t\treturn Math.round((used / userQuota) * 100);\n\t\t}\n\t\treturn -1;\n\t}, [settings?.attrs?.zimbraMailQuota, used]);\n\n\tconst description = useMemo(() => {\n\t\tswitch (true) {\n\t\t\tcase !quota || quota < 0:\n\t\t\t\treturn t('user_quota.unlimited', 'You have unlimited space available');\n\t\t\tcase quota === 100:\n\t\t\t\treturn t('user_quota.space_full', 'It seems that all available space is full');\n\t\t\tdefault:\n\t\t\t\treturn t('user_quota.limited', {\n\t\t\t\t\tdefaultValue: 'You have filled {{quota}}% of the available space',\n\t\t\t\t\tquota\n\t\t\t\t});\n\t\t}\n\t}, [quota, t]);\n\n\tconst fillBackground = useMemo(() => {\n\t\tswitch (true) {\n\t\t\tcase quota >= 95:\n\t\t\t\treturn 'error';\n\t\t\tcase quota >= 90:\n\t\t\t\treturn 'warning';\n\t\t\tcase quota === -1:\n\t\t\t\treturn 'gray4';\n\t\t\tdefault:\n\t\t\t\treturn 'primary';\n\t\t}\n\t}, [quota]);\n\tconst sectionTitle = useMemo(() => quotaSubSection(t), [t]);\n\treturn mobileView ? (\n\t\t<Container width=\"fit\" padding={{ right: 'medium' }}>\n\t\t\t<Tooltip label={description} placement=\"bottom\">\n\t\t\t\t<Quota fill={quota > 0 ? quota : 0} fillBackground={fillBackground} />\n\t\t\t</Tooltip>\n\t\t</Container>\n\t) : (\n\t\t<FormSubSection\n\t\t\tlabel={sectionTitle.label}\n\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\twidth=\"50%\"\n\t\t\tid={sectionTitle.id}\n\t\t>\n\t\t\t<Container width=\"fill\" padding={{ vertical: 'medium' }}>\n\t\t\t\t<Container\n\t\t\t\t\torientation=\"horizontal\"\n\t\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\t\tpadding={{ bottom: 'medium' }}\n\t\t\t\t>\n\t\t\t\t\t<Text>{description}</Text>\n\t\t\t\t</Container>\n\t\t\t\t<Quota fill={quota === -1 ? 100 : quota} fillBackground={fillBackground} />\n\t\t\t</Container>\n\t\t</FormSubSection>\n\t);\n};\n\nexport default UserQuota;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useEffect } from 'react';\nimport {\n\tPadding,\n\tRow,\n\tText,\n\tContainer,\n\tButtonOld as Button,\n\tDivider,\n\tBreadcrumbs\n} from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { useHistory, useParams } from 'react-router-dom';\nimport { SETTINGS_APP_ID } from '../../constants';\nimport { RouteLeavingGuard } from '../../ui-extras/nav-guard';\n\ntype SettingsHeaderProps = {\n\ttitle: string;\n\tonSave: () => void;\n\tonCancel: () => void;\n\tisDirty: boolean;\n};\n\nconst SettingsHeader: FC<SettingsHeaderProps> = ({ onSave, onCancel, isDirty, title }) => {\n\tconst [t] = useTranslation();\n\tconst history = useHistory();\n\tconst useparam = useParams();\n\tconst crumbs = [\n\t\t{\n\t\t\tid: 'settings',\n\t\t\tlabel: t('settings.app', 'Settings'),\n\t\t\tclick: (): void => history.push(`/${SETTINGS_APP_ID}/`)\n\t\t},\n\t\t{\n\t\t\tid: 'general',\n\t\t\tlabel: title,\n\t\t\tclick: (): void => history.push(`/${SETTINGS_APP_ID}/`)\n\t\t}\n\t];\n\tconst search = history.location?.search;\n\tuseEffect(() => {\n\t\tif (search) {\n\t\t\tsetTimeout(\n\t\t\t\t() =>\n\t\t\t\t\tdocument\n\t\t\t\t\t\t.querySelector(`#${history.location.search}`.replace('?section=', ''))\n\t\t\t\t\t\t?.scrollIntoView(),\n\t\t\t\t1\n\t\t\t);\n\t\t}\n\t}, [history, history.location, history.location.search, search, useparam]);\n\treturn (\n\t\t<>\n\t\t\t<RouteLeavingGuard when={isDirty} onSave={onSave}>\n\t\t\t\t<Text>\n\t\t\t\t\t{t(\n\t\t\t\t\t\t'label.unsaved_changes_line1',\n\t\t\t\t\t\t'Are you sure you want to leave this page without saving?'\n\t\t\t\t\t)}\n\t\t\t\t</Text>\n\t\t\t\t<Text>{t('label.unsaved_changes_line2', 'All your unsaved changes will be lost')}</Text>\n\t\t\t</RouteLeavingGuard>\n\t\t\t<Container\n\t\t\t\torientation=\"vertical\"\n\t\t\t\tmainAlignment=\"space-around\"\n\t\t\t\tbackground=\"gray5\"\n\t\t\t\theight=\"fit\"\n\t\t\t>\n\t\t\t\t<Row orientation=\"horizontal\" width=\"100%\">\n\t\t\t\t\t<Row\n\t\t\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\t\t\twidth=\"50%\"\n\t\t\t\t\t\tcrossAlignment=\"flex-start\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Breadcrumbs crumbs={crumbs} />\n\t\t\t\t\t</Row>\n\t\t\t\t\t<Row\n\t\t\t\t\t\tpadding={{ all: 'small' }}\n\t\t\t\t\t\twidth=\"50%\"\n\t\t\t\t\t\tmainAlignment=\"flex-end\"\n\t\t\t\t\t\tcrossAlignment=\"flex-end\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\tlabel={t('label.discard_changes', 'DISCARD CHANGES')}\n\t\t\t\t\t\t\t\tonClick={onCancel}\n\t\t\t\t\t\t\t\tcolor=\"secondary\"\n\t\t\t\t\t\t\t\tdisabled={!isDirty}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tlabel={t('label.save', 'Save')}\n\t\t\t\t\t\t\tcolor=\"primary\"\n\t\t\t\t\t\t\tonClick={onSave}\n\t\t\t\t\t\t\tdisabled={!isDirty}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Row>\n\t\t\t\t</Row>\n\t\t\t</Container>\n\t\t\t<Divider />\n\t\t</>\n\t);\n};\n\nexport default SettingsHeader;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC } from 'react';\nimport { Padding, Row, Text } from '@zextras/carbonio-design-system';\n\nconst Heading: FC<{ title: string }> = ({ title }) => (\n\t<>\n\t\t<Row padding={{ all: 'small' }} mainAlignment=\"baseline\" crossAlignment=\"baseline\" width=\"100%\">\n\t\t\t<Text size=\"large\" weight=\"bold\">\n\t\t\t\t{title}\n\t\t\t</Text>\n\t\t</Row>\n\t\t<Padding vertical=\"small\" />\n\t</>\n);\n\nexport default Heading;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport moment from 'moment';\nimport { TFunction } from 'i18next';\nimport { AccountSettings } from '../../../types';\n\n// const [t] = useTranslation();\n\nexport const ItemsSendAutoReplies = (t: TFunction): any => [\n\t{\n\t\tlabel: t('settings.out_of_office.send_auto_replies', 'Send auto-replies'),\n\t\tvalue: 'TRUE'\n\t},\n\t{\n\t\tlabel: t('settings.out_of_office.do_not_send_auto_replies', 'Do not send auto-replies'),\n\t\tvalue: 'FALSE'\n\t}\n];\n\nexport const ItemsExternalSenders = (t: TFunction): any => [\n\t{\n\t\tlabel: t(\n\t\t\t'settings.out_of_office.external_senders.send_standard_auto_reply',\n\t\t\t'Send standard auto-reply message'\n\t\t),\n\t\tvalue: 'SEND_AUTO_REPLY'\n\t},\n\t{\n\t\tlabel: t(\n\t\t\t'settings.out_of_office.external_senders.send_custom_in_organisation',\n\t\t\t'Send custom message to those who are not in my organization'\n\t\t),\n\t\tvalue: 'SHOW_EXTERNAL_INPUT'\n\t},\n\t{\n\t\tlabel: t(\n\t\t\t'settings.out_of_office.external_senders.send_custom_not_in_organisation',\n\t\t\t'Send custom message to those who are not in my organization or address book'\n\t\t),\n\t\tvalue: 'SEND_NOT_IN_ORG'\n\t},\n\t{\n\t\tlabel: t(\n\t\t\t'settings.out_of_office.external_senders.do_not_send_to_external',\n\t\t\t'Don’t send an auto-reply message to external sender'\n\t\t),\n\t\tvalue: 'SUPPRESS_EXTERNAL'\n\t}\n];\n\nexport const ItemsOutOfOfficeStatus = (t: TFunction): any => [\n\t{\n\t\tlabel: t('label.out_of_office', 'Out of Office'),\n\t\tvalue: 'OUTOFOFFICE'\n\t},\n\t{\n\t\tlabel: t('settings.out_of_office.status.busy', 'Busy'),\n\t\tvalue: 'BUSY'\n\t}\n];\n\nexport const getExternalSendersPrefsData = (\n\tsettings: AccountSettings,\n\tret: string,\n\tt: TFunction\n): { label: string; value: string } => {\n\tlet item;\n\tconst itemsExternalSenders = ItemsExternalSenders(t);\n\tif (\n\t\tsettings.prefs.zimbraPrefOutOfOfficeSuppressExternalReply === 'FALSE' &&\n\t\tsettings.prefs.zimbraPrefOutOfOfficeExternalReplyEnabled === 'FALSE'\n\t) {\n\t\titem = { ...itemsExternalSenders[0] };\n\t} else if (\n\t\tsettings.prefs.zimbraPrefExternalSendersType === 'ALL' &&\n\t\tsettings.prefs.zimbraPrefOutOfOfficeExternalReplyEnabled === 'TRUE'\n\t) {\n\t\titem = { ...itemsExternalSenders[1] };\n\t} else if (\n\t\tsettings.prefs.zimbraPrefExternalSendersType === 'ALLNOTINAB' &&\n\t\tsettings.prefs.zimbraPrefOutOfOfficeExternalReplyEnabled === 'TRUE'\n\t) {\n\t\titem = { ...itemsExternalSenders[2] };\n\t} else {\n\t\titem = { ...itemsExternalSenders[3] };\n\t}\n\n\treturn item;\n};\n\nexport const getOutOfOfficeStatusPrefsData = (\n\tsettings: AccountSettings,\n\tt: TFunction\n): { label: string; value: string } => {\n\tlet item;\n\tconst itemsOutOfOfficeStatus = ItemsOutOfOfficeStatus(t);\n\tif (settings.prefs.zimbraPrefOutOfOfficeFreeBusyStatus === 'BUSY') {\n\t\titem = { ...itemsOutOfOfficeStatus[1] };\n\t} else {\n\t\titem = { ...itemsOutOfOfficeStatus[0] };\n\t}\n\n\treturn item;\n};\n\nexport const changeDateEvent = (date: string | Date): string =>\n\tmoment(moment(date, 'YYYYMMDDHHmmss[Z]').utc()).format('YYYYMMDDHHmmss[Z]');\n\nexport const getDateEvent = (date: string): Date =>\n\tnew Date(moment.utc(date, 'YYYYMMDDHHmmss[Z]').local().valueOf());\n\nexport const startOfDate = (date: string): string =>\n\tmoment.utc(date, 'YYYYMMDDHHmmss[Z]').local().startOf('day').utc().format('YYYYMMDDHHmmss[Z]');\n\nexport const endOfDate = (date: string): string =>\n\tmoment.utc(date, 'YYYYMMDDHHmmss[Z]').local().endOf('day').utc().format('YYYYMMDDHHmmss[Z]');\n\nexport type LocaleDescriptor = {\n\tid: string;\n\tname: string;\n\tlocalName: string;\n\tvalue: string;\n\tlabel: string;\n};\n\nexport const localeList = (t: TFunction): Array<LocaleDescriptor> => [\n\t{\n\t\tid: 'zh_CN',\n\t\tname: '中文 (中国)',\n\t\tlocalName: t('locale.chinese_china', 'Chinese (China)'),\n\t\tlabel: t('locale.label_chinese', {\n\t\t\tvalue: '中文 (中国)',\n\t\t\tdefaultValue: 'Chinese (China) - {{value}}'\n\t\t}),\n\t\tvalue: 'zh_CN'\n\t},\n\t{\n\t\tid: 'nl',\n\t\tname: 'Nederlands',\n\t\tlocalName: t('locale.dutch', 'Dutch'),\n\t\tlabel: t('locale.label_dutch', { value: 'Nederlands', defaultValue: 'Dutch - {{value}}' }),\n\t\tvalue: 'nl'\n\t},\n\t{\n\t\tid: 'en',\n\t\tname: 'English',\n\t\tlocalName: t('locale.English', 'English'),\n\t\tlabel: t('locale.label_english', { value: 'English', defaultValue: 'English - {{value}}' }),\n\t\tvalue: 'en'\n\t},\n\t{\n\t\tid: 'de',\n\t\tname: 'Deutsch',\n\t\tlocalName: t('locale.german', 'German'),\n\t\tlabel: t('locale.label_german', { value: 'Deutsch', defaultValue: 'German - {{value}}' }),\n\t\tvalue: 'de'\n\t},\n\t{\n\t\tid: 'hi',\n\t\tname: 'हिंदी',\n\t\tlocalName: t('locale.hindi', 'Hindi'),\n\t\tlabel: t('locale.label_hindi', { value: 'हिंदी', defaultValue: 'Hindi - {{value}}' }),\n\t\tvalue: 'hi'\n\t},\n\t{\n\t\tid: 'it',\n\t\tname: 'italiano',\n\t\tlocalName: t('locale.italian', 'Italian'),\n\t\tlabel: t('locale.label_italian', { value: 'italiano', defaultValue: 'Italian - {{value}}' }),\n\t\tvalue: 'it'\n\t},\n\t{\n\t\tid: 'ja',\n\t\tname: '日本語',\n\t\tlocalName: t('locale.japanese', 'Japanese'),\n\t\tlabel: t('locale.label_japanese', { value: '日本語', defaultValue: 'Japanese - {{value}}' }),\n\t\tvalue: 'ja'\n\t},\n\n\t{\n\t\tid: 'pt',\n\t\tname: 'português',\n\t\tlocalName: t('locale.portuguese', 'Portuguese'),\n\t\tlabel: t('locale.label_portuguese', {\n\t\t\tvalue: 'português',\n\t\t\tdefaultValue: 'Portuguese - {{value}}'\n\t\t}),\n\t\tvalue: 'pt'\n\t},\n\t{\n\t\tid: 'pl',\n\t\tname: 'polski',\n\t\tlocalName: t('locale.polish', 'Polish'),\n\t\tlabel: 'Polish - polski',\n\t\tvalue: 'pl'\n\t},\n\t{\n\t\tid: 'pt_BR',\n\t\tname: 'português (Brasil)',\n\t\tlocalName: t('locale.portuguese_brazil', 'Portuguese (Brazil)'),\n\t\tlabel: t('locale.label_portuguese_brazil', {\n\t\t\tvalue: 'português (Brasil)',\n\t\t\tdefaultValue: 'Portuguese - {{value}}'\n\t\t}),\n\t\tvalue: 'pt_BR'\n\t},\n\n\t{\n\t\tid: 'ro',\n\t\tname: 'română',\n\t\tlocalName: t('locale.romanian', 'Romanian'),\n\t\tlabel: t('locale.label_romanian', { value: 'română', defaultValue: 'Romanian - {{value}}' }),\n\t\tvalue: 'ro'\n\t},\n\t{\n\t\tid: 'ru',\n\t\tname: 'русский',\n\t\tlocalName: t('locale.russian', 'Russian'),\n\t\tlabel: t('locale.label_russian', { value: 'русский', defaultValue: 'Russian - {{value}}' }),\n\t\tvalue: 'ru'\n\t},\n\n\t{\n\t\tid: 'es',\n\t\tname: 'español',\n\t\tlocalName: t('locale.spanish', 'Spanish'),\n\t\tlabel: t('locale.label_spanish', { value: 'español', defaultValue: 'Spanish - {{value}}' }),\n\t\tvalue: 'es'\n\t},\n\n\t{\n\t\tid: 'th',\n\t\tname: 'ไทย',\n\t\tlocalName: t('locale.thai', 'Thai'),\n\t\tlabel: t('locale.label_thai', { value: 'ไทย', defaultValue: 'Thai - {{value}}' }),\n\t\tvalue: 'th'\n\t},\n\t{\n\t\tid: 'tr',\n\t\tname: 'Türkçe',\n\t\tlocalName: t('locale.turkish', 'Turkish'),\n\t\tlabel: t('locale.label_turkish', { value: 'Türkçe', defaultValue: 'Turkish - {{value}}' }),\n\t\tvalue: 'tr'\n\t},\n\t{\n\t\tid: 'fr',\n\t\tname: 'français',\n\t\tlocalName: t('locale.french', 'French'),\n\t\tlabel: t('locale.label_french', { value: 'français', defaultValue: 'French - {{value}}' }),\n\t\tvalue: 'fr'\n\t},\n\t{\n\t\tid: 'vi',\n\t\tname: 'Tiếng Việt',\n\t\tlocalName: t('locale.vietnamese', 'Vietnamese'),\n\t\tlabel: 'Vietnamese - Tiếng Việt',\n\t\tvalue: 'vi'\n\t}\n];\n// TODO: For future languages\n// export const localeList = (t: TFunction): any => [\n// \t{\n// \t\tid: 'ar',\n// \t\tname: 'العربية',\n// \t\tlocalName: t('locale.arabic', 'Arabic'),\n// \t\tlabel: t('locale.label_arabic', { value: 'لعربية', defaultValue: 'Arabic - {{value}}' }),\n// \t\tvalue: 'ar'\n// \t},\n// \t{\n// \t\tid: 'eu',\n// \t\tname: 'Euskara',\n// \t\tlocalName: t('locale.basque', 'Basque'),\n// \t\tlabel: t('locale.label_basque', { value: 'Euskara', defaultValue: 'Basque - {{value}}' }),\n// \t\tvalue: 'eu'\n// \t},\n// \t{\n// \t\tid: 'bg',\n// \t\tname: 'български',\n// \t\tlocalName: t('locale.bulgarian', 'Bulgarian'),\n// \t\tlabel: t('locale.label_bulgarian', {\n// \t\t\tvalue: 'български',\n// \t\t\tdefaultValue: 'Bulgarian - {{value}}'\n// \t\t}),\n// \t\tvalue: 'bg'\n// \t},\n// \t{\n// \t\tid: 'ca',\n// \t\tname: 'català',\n// \t\tlocalName: t('locale.catalan', 'Catalan'),\n// \t\tlabel: 'Catalan - català',\n// \t\tvalue: 'ca'\n// \t},\n// \t{\n// \t\tid: 'zh',\n// \t\tname: '中文',\n// \t\tlocalName: t('locale.chinese', 'Chinese'),\n// \t\tlabel: 'Chinese - 中文',\n// \t\tvalue: 'zh'\n// \t},\n// \t{\n// \t\tid: 'zh_CN',\n// \t\tname: '中文 (中国)',\n// \t\tlocalName: t('locale.chinese_china', 'Chinese (China)'),\n// \t\tlabel: 'Chinese (China) - 中文 (中国)',\n// \t\tvalue: 'zh_CN'\n// \t},\n// \t{\n// \t\tid: 'zh_HK',\n// \t\tname: '中文 (香港)',\n// \t\tlocalName: t('locale.chinese_hong_kong', 'Chinese (Hong Kong SAR China)'),\n// \t\tlabel: 'Chinese (Hong Kong SAR China) - 中文 (香港)',\n// \t\tvalue: 'zh_HK'\n// \t},\n// \t{\n// \t\tid: 'zh_TW',\n// \t\tname: '中文 (台灣)',\n// \t\tlocalName: t('locale.chinese_taiwan', 'Chinese (Taiwan)'),\n// \t\tlabel: 'Chinese (Taiwan) - 中文 (台灣)',\n// \t\tvalue: 'zh_TW'\n// \t},\n// \t{\n// \t\tid: 'hr',\n// \t\tname: 'hrvatski',\n// \t\tlocalName: t('locale.croatian', 'Croatian'),\n// \t\tlabel: 'Croatian - hrvatski',\n// \t\tvalue: 'hr'\n// \t},\n// \t{\n// \t\tid: 'da',\n// \t\tname: 'Dansk',\n// \t\tlocalName: t('locale.danish', 'Danish'),\n// \t\tlabel: 'Danish - Dansk',\n// \t\tvalue: 'da'\n// \t},\n\n// \t{\n// \t\tid: 'en_AU',\n// \t\tname: 'English (Australia)',\n// \t\tlocalName: t('locale.english_australia', 'English (Australia)'),\n// \t\tlabel: 'English (Australia) - English (Australia)',\n// \t\tvalue: 'en_AU'\n// \t},\n// \t{\n// \t\tid: 'en_GB',\n// \t\tname: 'English (United Kingdom)',\n// \t\tlocalName: t('locale.english_united_kingdom', 'English (United Kingdom)'),\n// \t\tlabel: 'English (United Kingdom) - English (United Kingdom)',\n// \t\tvalue: 'en_GB'\n// \t},\n// \t{\n// \t\tid: 'en_US',\n// \t\tname: 'English (United States)',\n// \t\tlocalName: t('locale.english_united_states', 'English (United States)'),\n// \t\tlabel: 'English (United States) - English (United States)',\n// \t\tvalue: 'en_US'\n// \t},\n// \t{\n// \t\tid: 'fr',\n// \t\tname: 'français',\n// \t\tlocalName: t('locale.french', 'French'),\n// \t\tlabel: 'French - français',\n// \t\tvalue: 'fr'\n// \t},\n// \t{\n// \t\tid: 'fr_CA',\n// \t\tname: 'français (Canada)',\n// \t\tlocalName: t('locale.french_canada', 'French (Canada)'),\n// \t\tlabel: 'French (Canada) - français (Canada)',\n// \t\tvalue: 'fr_CA'\n// \t},\n// \t{\n// \t\tid: 'fr_FR',\n// \t\tname: 'français (France)',\n// \t\tlocalName: t('locale.french_france', 'French (France)'),\n// \t\tlabel: 'French (France) - français (France)',\n// \t\tvalue: 'fr_FR'\n// \t},\n\n// \t{\n// \t\tid: 'iw',\n// \t\tname: 'עברית',\n// \t\tlocalName: t('locale.hebrew', 'Hebrew'),\n// \t\tlabel: 'Hebrew - עברית',\n// \t\tvalue: 'iw'\n// \t},\n\n// \t{\n// \t\tid: 'hu',\n// \t\tname: 'magyar',\n// \t\tlocalName: t('locale.hungarian', 'Hungarian'),\n// \t\tlabel: 'Hungarian - magyar',\n// \t\tvalue: 'hu'\n// \t},\n// \t{\n// \t\tid: 'in',\n// \t\tname: 'Bahasa Indonesia',\n// \t\tlocalName: t('locale.indonesian', 'Indonesian'),\n// \t\tlabel: 'Indonesian - Bahasa Indonesia',\n// \t\tvalue: 'in'\n// \t},\n\n// \t{\n// \t\tid: 'ko',\n// \t\tname: '한국어',\n// \t\tlocalName: t('locale.korean', 'Korean'),\n// \t\tlabel: 'Korean - 한국어',\n// \t\tvalue: 'ko'\n// \t},\n// \t{\n// \t\tid: 'lo',\n// eslint-disable-next-line no-irregular-whitespace\n// \t\tname: 'ພາສາລາວ',\n// \t\tlocalName: t('locale.lao', 'Lao'),\n// eslint-disable-next-line no-irregular-whitespace\n// \t\tlabel: 'Lao - ພາສາລາວ',\n// \t\tvalue: 'lo'\n// \t},\n// \t{\n// \t\tid: 'ms',\n// \t\tname: 'Bahasa Melayu',\n// \t\tlocalName: t('locale.malay', 'Malay'),\n// \t\tlabel: 'Malay - Bahasa Melayu',\n// \t\tvalue: 'ms'\n// \t},\n// \t{\n// \t\tid: 'no',\n// \t\tname: 'norsk',\n// \t\tlocalName: t('locale.norwegian', 'Norwegian'),\n// \t\tlabel: 'Norwegian - norsk',\n// \t\tvalue: 'no'\n// \t},\n\n// \t{\n// \t\tid: 'pt_PT',\n// \t\tname: 'português (Portugal)',\n// \t\tlocalName: t('locale.potuguese_portugal', 'Portuguese (Portugal)'),\n// \t\tlabel: 'Portuguese (Portugal) - português (Portugal)',\n// \t\tvalue: 'pt_PT'\n// \t},\n\n// \t{\n// \t\tid: 'sl',\n// \t\tname: 'Slovenščina',\n// \t\tlocalName: t('locale.slovenian', 'Slovenian'),\n// \t\tlabel: 'Slovenian - Slovenščina',\n// \t\tvalue: 'sl'\n// \t},\n\n// \t{\n// \t\tid: 'sv',\n// \t\tname: 'svenska',\n// \t\tlocalName: t('locale.swedish', 'Swedish'),\n// \t\tlabel: 'Swedish - svenska',\n// \t\tvalue: 'sv'\n// \t},\n// \t{\n// \t\tid: 'ta',\n// \t\tname: 'தமிழ்',\n// \t\tlocalName: t('locale.tamil', 'Tamil'),\n// \t\tlabel: 'Tamil - தமிழ்',\n// \t\tvalue: 'ta'\n// \t},\n\n// \t{\n// \t\tid: 'uk',\n// \t\tname: 'українська',\n// \t\tlocalName: t('locale.ukrainian', 'Ukrainian'),\n// \t\tlabel: 'Ukrainian - українська',\n// \t\tvalue: 'uk'\n// \t},\n\n// ];\n\nexport type TimeZoneDescriptor = {\n\tvalue: string;\n\tlabel: string;\n\toffSet?: string;\n};\n\nexport const timeZoneList = (t: TFunction): Array<TimeZoneDescriptor> => [\n\t{\n\t\tvalue: 'Etc/GMT+12',\n\t\tlabel: t('timezone.etc_gmt+12', { value: 'GMT -12:00', defaultValue: '{{value}} Dateline' })\n\t},\n\t{\n\t\tvalue: 'Pacific/Midway',\n\t\tlabel: t('timezone.pacific_midway', { value: 'GMT -11:00', defaultValue: '{{value}} Samoa' })\n\t},\n\t{\n\t\tvalue: 'America/Adak',\n\t\tlabel: t('timezone.america_adak', { value: 'GMT -10:00', defaultValue: '{{value}} Adak' })\n\t},\n\t{\n\t\tvalue: 'Pacific/Honolulu',\n\t\tlabel: t('timezone.pacific_honolulu', { value: 'GMT -10:00', defaultValue: '{{value}} Hawaii' })\n\t},\n\t{\n\t\tvalue: 'Pacific/Marquesas',\n\t\tlabel: t('timezone.pacific_marquesas', {\n\t\t\tvalue: 'GMT -09:30',\n\t\t\tdefaultValue: '{{value}} Marquesas'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Anchorage',\n\t\tlabel: t('timezone.america_anchorage', {\n\t\t\tvalue: 'GMT -09:00',\n\t\t\tdefaultValue: '{{value}} Alaska'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Los_Angeles',\n\t\tlabel: t('timezone.america_los_angeles', {\n\t\t\tvalue: 'GMT -08:00',\n\t\t\tdefaultValue: '{{value}} US/Canada Pacific'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Tijuana',\n\t\tlabel: t('timezone.america_tijuana', {\n\t\t\tvalue: 'GMT -08:00',\n\t\t\tdefaultValue: '{{value}} Baja California'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Chihuahua',\n\t\tlabel: t('timezone.america_chihuahua', {\n\t\t\tvalue: 'GMT -07:00',\n\t\t\tdefaultValue: '{{value}} Chihuahua, La Paz, Mazatlan'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Denver',\n\t\tlabel: t('timezone.america_denver', {\n\t\t\tvalue: 'GMT -07:00',\n\t\t\tdefaultValue: '{{value}} US/Canada Mountain'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Fort_Nelson',\n\t\tlabel: t('timezone.america_fort_nelson', {\n\t\t\tvalue: 'GMT -07:00',\n\t\t\tdefaultValue: '{{value}} Fort Nelson'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Phoenix',\n\t\tlabel: t('timezone.america_phoenix', { value: 'GMT -07:00', defaultValue: '{{value}} Arizona' })\n\t},\n\t{\n\t\tvalue: 'America/Whitehorse',\n\t\tlabel: t('timezone.america_whitehorse', {\n\t\t\tvalue: 'GMT -07:00',\n\t\t\tdefaultValue: '{{value}} Yukon'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Chicago',\n\t\tlabel: t('timezone.america_chicago', {\n\t\t\tvalue: 'GMT -06:00',\n\t\t\tdefaultValue: '{{value}} US/Canada Central'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Guatemala',\n\t\tlabel: t('timezone.america_guatemala', {\n\t\t\tvalue: 'GMT -06:00',\n\t\t\tdefaultValue: '{{value}} Central America'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Mexico_City',\n\t\tlabel: t('timezone.america_mexico_city', {\n\t\t\tvalue: 'GMT -06:00',\n\t\t\tdefaultValue: '{{value}} Guadalajara, Mexico City, Monterrey'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Regina',\n\t\tlabel: t('timezone.america_regina', {\n\t\t\tvalue: 'GMT -06:00',\n\t\t\tdefaultValue: '{{value}} Saskatchewan'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Easter',\n\t\tlabel: t('timezone.pacific_easter', { value: 'GMT -06:00', defaultValue: '{{value}} Easter' })\n\t},\n\t{\n\t\tvalue: 'America/Bogota',\n\t\tlabel: t('timezone.america_bogota', { value: 'GMT -05:00', defaultValue: '{{value}} Colombia' })\n\t},\n\t{\n\t\tvalue: 'America/Cancun',\n\t\tlabel: t('timezone.america_cancun', {\n\t\t\tvalue: 'GMT -05:00',\n\t\t\tdefaultValue: '{{value}} Cancun, Chetumal'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Grand_Turk',\n\t\tlabel: t('timezone.america_grand_turk', {\n\t\t\tvalue: 'GMT -05:00',\n\t\t\tdefaultValue: '{{value}} Turks and Caicos Islands'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Havana',\n\t\tlabel: t('timezone.america_havana', { value: 'GMT -05:00', defaultValue: '{{value}} Havana' })\n\t},\n\t{\n\t\tvalue: 'America/Indiana/Indianapolis',\n\t\tlabel: t('timezone.america_indiana_indianapolis', {\n\t\t\tvalue: 'GMT -05:00',\n\t\t\tdefaultValue: '{{value}} Indiana (East)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/New_York',\n\t\tlabel: t('timezone.america_new_york', {\n\t\t\tvalue: 'GMT -05:00',\n\t\t\tdefaultValue: '{{value}} US/Canada Eastern'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Port-au-Prince',\n\t\tlabel: t('timezone.america_port-au-prince', {\n\t\t\tvalue: 'GMT -05:00',\n\t\t\tdefaultValue: '{{value}} Port-au-Prince'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Asuncion',\n\t\tlabel: t('timezone.america_asuncion', {\n\t\t\tvalue: 'GMT -04:00',\n\t\t\tdefaultValue: '{{value}} Asuncion'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Caracas',\n\t\tlabel: t('timezone.america_caracas', { value: 'GMT -04:00', defaultValue: '{{value}} Caracas' })\n\t},\n\t{\n\t\tvalue: 'America/Cuiaba',\n\t\tlabel: t('timezone.america_cuiaba', { value: 'GMT -04:00', defaultValue: '{{value}} Cuiaba' })\n\t},\n\t{\n\t\tvalue: 'America/Guyana',\n\t\tlabel: t('timezone.america_guyana', {\n\t\t\tvalue: 'GMT -04:00',\n\t\t\tdefaultValue: '{{value}} Georgetown, La Paz, Manaus, San Juan'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Halifax',\n\t\tlabel: t('timezone.america_halifax', {\n\t\t\tvalue: 'GMT -04:00',\n\t\t\tdefaultValue: '{{value}} Atlantic Time (Canada)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Santiago',\n\t\tlabel: t('timezone.america_santiago', {\n\t\t\tvalue: 'GMT -04:00',\n\t\t\tdefaultValue: '{{value}} Pacific South America'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/St_Johns',\n\t\tlabel: t('timezone.america_st_johns', {\n\t\t\tvalue: 'GMT -03:30',\n\t\t\tdefaultValue: '{{value}} Newfoundland'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Araguaina',\n\t\tlabel: t('timezone.america_araguaina', {\n\t\t\tvalue: 'GMT -03:00',\n\t\t\tdefaultValue: '{{value}} Araguaina'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Argentina/Buenos_Aires',\n\t\tlabel: t('timezone.america_argentina_buenos_aires', {\n\t\t\tvalue: 'GMT -03:00',\n\t\t\tdefaultValue: '{{value}} Argentina'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Bahia',\n\t\tlabel: t('timezone.america_bahia', { value: 'GMT -03:00', defaultValue: '{{value}} Salvador' })\n\t},\n\t{\n\t\tvalue: 'America/Cayenne',\n\t\tlabel: t('timezone.america_cayenne', {\n\t\t\tvalue: 'GMT -03:00',\n\t\t\tdefaultValue: '{{value}} Cayenne, Fortaleza'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Miquelon',\n\t\tlabel: t('timezone.america_miquelon', {\n\t\t\tvalue: 'GMT -03:00',\n\t\t\tdefaultValue: '{{value}} Miquelon'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Montevideo',\n\t\tlabel: t('timezone.america_montevideo', {\n\t\t\tvalue: 'GMT -03:00',\n\t\t\tdefaultValue: '{{value}} Montevideo'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Punta_Arenas',\n\t\tlabel: t('timezone.america_punta_arenas', {\n\t\t\tvalue: 'GMT -03:00',\n\t\t\tdefaultValue: '{{value}} Punta_Arenas'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'America/Sao_Paulo',\n\t\tlabel: t('timezone.america_sao_paulo', {\n\t\t\tvalue: 'GMT -03:00',\n\t\t\tdefaultValue: '{{value}} Brasilia'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Atlantic/South_Georgia',\n\t\tlabel: t('timezone.atlantic_south_georgia', {\n\t\t\tvalue: 'GMT -02:00',\n\t\t\tdefaultValue: '{{value}} Mid-Atlantic'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Atlantic/Azores',\n\t\tlabel: t('timezone.atlantic_azores', { value: 'GMT -01:00', defaultValue: '{{value}} Azores' })\n\t},\n\t{\n\t\tvalue: 'Atlantic/Cape_Verde',\n\t\tlabel: t('timezone.atlantic_cape_verde', {\n\t\t\tvalue: 'GMT -01:00',\n\t\t\tdefaultValue: '{{value}} Cape Verde Is.'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Monrovia',\n\t\tlabel: t('timezone.africa_monrovia', {\n\t\t\tvalue: 'GMT +00:00',\n\t\t\tdefaultValue: '{{value}} Monrovia'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Sao_Tome',\n\t\tlabel: t('timezone.africa_sao_tome', {\n\t\t\tvalue: 'GMT +00:00',\n\t\t\tdefaultValue: '{{value}} Sao Tome'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/London',\n\t\tlabel: t('timezone.europe_london', {\n\t\t\tvalue: 'GMT +00:00',\n\t\t\tdefaultValue: '{{value}} Britain, Ireland, Portugal'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'UTC',\n\t\tlabel: t('timezone.utc', {\n\t\t\tvalue: 'GMT/UTC',\n\t\t\tdefaultValue: '{{value}} Coordinated Universal Time'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Algiers',\n\t\tlabel: t('timezone.africa_algiers', {\n\t\t\tvalue: 'GMT +01:00',\n\t\t\tdefaultValue: '{{value}} West Central Africa'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Casablanca',\n\t\tlabel: t('timezone.africa_casablanca', {\n\t\t\tvalue: 'GMT +01:00',\n\t\t\tdefaultValue: '{{value}} Casablanca'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Belgrade',\n\t\tlabel: t('timezone.europe_belgrade', {\n\t\t\tvalue: 'GMT +01:00',\n\t\t\tdefaultValue: '{{value}} Belgrade, Bratislava, Budapest, Ljubljana, Prague'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Berlin',\n\t\tlabel: t('timezone.europe_berlin', {\n\t\t\tvalue: 'GMT +01:00',\n\t\t\tdefaultValue: '{{value}} Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Brussels',\n\t\tlabel: t('timezone.europe_brussels', {\n\t\t\tvalue: 'GMT +01:00',\n\t\t\tdefaultValue: '{{value}} Brussels, Copenhagen, Madrid, Paris'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Warsaw',\n\t\tlabel: t('timezone.europe_warsaw', {\n\t\t\tvalue: 'GMT +01:00',\n\t\t\tdefaultValue: '{{value}} Sarajevo, Skopje, Warsaw, Zagreb'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Cairo',\n\t\tlabel: t('timezone.africa_cairo', { value: 'GMT +02:00', defaultValue: '{{value}} Egypt' })\n\t},\n\t{\n\t\tvalue: 'Africa/Harare',\n\t\tlabel: t('timezone.africa_harare', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Harare, Pretoria'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Juba',\n\t\tlabel: t('timezone.africa_juba', { value: 'GMT +02:00', defaultValue: '{{value}} Juba' })\n\t},\n\t{\n\t\tvalue: 'Africa/Khartoum',\n\t\tlabel: t('timezone.africa_khartoum', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Khartoum'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Tripoli',\n\t\tlabel: t('timezone.africa_tripoli', { value: 'GMT +02:00', defaultValue: '{{value}} Tripoli' })\n\t},\n\t{\n\t\tvalue: 'Africa/Windhoek',\n\t\tlabel: t('timezone.africa_windhoek', { value: 'GMT +02:00', defaultValue: '{{value}} Namibia' })\n\t},\n\t{\n\t\tvalue: 'Asia/Amman',\n\t\tlabel: t('timezone.asia_amman', { value: 'GMT +02:00', defaultValue: '{{value}} Jordan' })\n\t},\n\t{\n\t\tvalue: 'Asia/Beirut',\n\t\tlabel: t('timezone.asia_beirut', { value: 'GMT +02:00', defaultValue: '{{value}} Beirut' })\n\t},\n\t{\n\t\tvalue: 'Asia/Damascus',\n\t\tlabel: t('timezone.asia_damascus', { value: 'GMT +02:00', defaultValue: '{{value}} Damascus' })\n\t},\n\t{\n\t\tvalue: 'Asia/Gaza',\n\t\tlabel: t('timezone.asia_gaza', { value: 'GMT +02:00', defaultValue: '{{value}} Gaza' })\n\t},\n\t{\n\t\tvalue: 'Asia/Jerusalem',\n\t\tlabel: t('timezone.asia_jerusalem', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Jerusalem'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Athens',\n\t\tlabel: t('timezone.europe_athens', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Athens, Beirut, Bucharest, Istanbul'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Bucharest',\n\t\tlabel: t('timezone.europe_bucharest', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Bucharest'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Chisinau',\n\t\tlabel: t('timezone.europe_chisinau', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Chisinau'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Helsinki',\n\t\tlabel: t('timezone.europe_helsinki', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Kaliningrad',\n\t\tlabel: t('timezone.europe_kaliningrad', {\n\t\t\tvalue: 'GMT +02:00',\n\t\t\tdefaultValue: '{{value}} Kaliningrad (RTZ 1)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Africa/Nairobi',\n\t\tlabel: t('timezone.africa_nairobi', { value: 'GMT +03:00', defaultValue: '{{value}} Nairobi' })\n\t},\n\t{\n\t\tvalue: 'Asia/Baghdad',\n\t\tlabel: t('timezone.asia_baghdad', { value: 'GMT +03:00', defaultValue: '{{value}} Iraq' })\n\t},\n\t{\n\t\tvalue: 'Asia/Kuwait',\n\t\tlabel: t('timezone.asia_kuwait', {\n\t\t\tvalue: 'GMT +03:00',\n\t\t\tdefaultValue: '{{value}} Kuwait, Riyadh'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Istanbul',\n\t\tlabel: t('timezone.europe_istanbul', {\n\t\t\tvalue: 'GMT +03:00',\n\t\t\tdefaultValue: '{{value}} Istanbul'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Minsk',\n\t\tlabel: t('timezone.europe_minsk', { value: 'GMT +03:00', defaultValue: '{{value}} Minsk' })\n\t},\n\t{\n\t\tvalue: 'Europe/Moscow',\n\t\tlabel: t('timezone.europe_moscow', {\n\t\t\tvalue: 'GMT +03:00',\n\t\t\tdefaultValue: '{{value}} Moscow, St. Petersburg, Volgograd (RTZ 2)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Volgograd',\n\t\tlabel: t('timezone.europe_volgograd', {\n\t\t\tvalue: 'GMT +03:00',\n\t\t\tdefaultValue: '{{value}} Volgograd'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Tehran',\n\t\tlabel: t('timezone.asia_tehran', { value: 'GMT +03:30', defaultValue: '{{value}} Tehran' })\n\t},\n\t{\n\t\tvalue: 'Asia/Baku',\n\t\tlabel: t('timezone.asia_baku', { value: 'GMT +04:00', defaultValue: '{{value}} Baku' })\n\t},\n\t{\n\t\tvalue: 'Asia/Muscat',\n\t\tlabel: t('timezone.asia_muscat', {\n\t\t\tvalue: 'GMT +04:00',\n\t\t\tdefaultValue: '{{value}} Abu Dhabi, Muscat'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Tbilisi',\n\t\tlabel: t('timezone.asia_tbilisi', { value: 'GMT +04:00', defaultValue: '{{value}} Tbilisi' })\n\t},\n\t{\n\t\tvalue: 'Asia/Yerevan',\n\t\tlabel: t('timezone.asia_yerevan', { value: 'GMT +04:00', defaultValue: '{{value}} Yerevan' })\n\t},\n\t{\n\t\tvalue: 'Europe/Astrakhan',\n\t\tlabel: t('timezone.europe_astrakhan', {\n\t\t\tvalue: 'GMT +04:00',\n\t\t\tdefaultValue: '{{value}} Astrakhan'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Samara',\n\t\tlabel: t('timezone.europe_samara', {\n\t\t\tvalue: 'GMT +04:00',\n\t\t\tdefaultValue: '{{value}} Izhevsk, Samara (RTZ 3)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Europe/Saratov',\n\t\tlabel: t('timezone.europe_saratov', { value: 'GMT +04:00', defaultValue: '{{value}} Saratov' })\n\t},\n\t{\n\t\tvalue: 'Indian/Mauritius',\n\t\tlabel: t('timezone.indian_mauritius', {\n\t\t\tvalue: 'GMT +04:00',\n\t\t\tdefaultValue: '{{value}} Port Louis'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Kabul',\n\t\tlabel: t('timezone.asia_kabul', { value: 'GMT +04:30', defaultValue: '{{value}} Kabul' })\n\t},\n\t{\n\t\tvalue: 'Asia/Karachi',\n\t\tlabel: t('timezone.asia_karachi', {\n\t\t\tvalue: 'GMT +05:00',\n\t\t\tdefaultValue: '{{value}} Islamabad, Karachi'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Qyzylorda',\n\t\tlabel: t('timezone.asia_qyzylorda', {\n\t\t\tvalue: 'GMT +05:00',\n\t\t\tdefaultValue: '{{value}} Qyzylorda'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Tashkent',\n\t\tlabel: t('timezone.asia_tashkent', { value: 'GMT +05:00', defaultValue: '{{value}} Tashkent' })\n\t},\n\t{\n\t\tvalue: 'Asia/Yekaterinburg',\n\t\tlabel: t('timezone.asia_yekaterinburg', {\n\t\t\tvalue: 'GMT +05:00',\n\t\t\tdefaultValue: '{{value}} Ekaterinburg (RTZ 4)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Colombo',\n\t\tlabel: t('timezone.asia_colombo', {\n\t\t\tvalue: 'GMT +05:30',\n\t\t\tdefaultValue: '{{value}} Sri Jayawardenepura Kotte'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Kolkata',\n\t\tlabel: t('timezone.asia_kolkata', {\n\t\t\tvalue: 'GMT +05:30',\n\t\t\tdefaultValue: '{{value}} Chennai, Kolkata, Mumbai, New Delhi'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Kathmandu',\n\t\tlabel: t('timezone.asia_kathmandu', {\n\t\t\tvalue: 'GMT +05:45',\n\t\t\tdefaultValue: '{{value}} Kathmandu'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Almaty',\n\t\tlabel: t('timezone.asia_almaty', { value: 'GMT +06:00', defaultValue: '{{value}} Astana' })\n\t},\n\t{\n\t\tvalue: 'Asia/Dhaka',\n\t\tlabel: t('timezone.asia_dhaka', { value: 'GMT +06:00', defaultValue: '{{value}} Dhaka' })\n\t},\n\t{\n\t\tvalue: 'Asia/Omsk',\n\t\tlabel: t('timezone.asia_omsk', { value: 'GMT +06:00', defaultValue: '{{value}} Omsk' })\n\t},\n\t{\n\t\tvalue: 'Asia/Yangon',\n\t\tlabel: t('timezone.asia_yangon', { value: 'GMT +06:30', defaultValue: '{{value}} Yangon' })\n\t},\n\t{\n\t\tvalue: 'Asia/Bangkok',\n\t\tlabel: t('timezone.asia_bangkok', {\n\t\t\tvalue: 'GMT +07:00',\n\t\t\tdefaultValue: '{{value}} Bangkok, Hanoi, Jakarta'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Barnaul',\n\t\tlabel: t('timezone.asia_barnaul', { value: 'GMT +07:00', defaultValue: '{{value}} Barnaul' })\n\t},\n\t{\n\t\tvalue: 'Asia/Hovd',\n\t\tlabel: t('timezone.asia_hovd', { value: 'GMT +07:00', defaultValue: '{{value}} Hovd' })\n\t},\n\t{\n\t\tvalue: 'Asia/Krasnoyarsk',\n\t\tlabel: t('timezone.asia_krasnoyarsk', {\n\t\t\tvalue: 'GMT +07:00',\n\t\t\tdefaultValue: '{{value}} Krasnoyarsk (RTZ 6)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Novosibirsk',\n\t\tlabel: t('timezone.asia_novosibirsk', {\n\t\t\tvalue: 'GMT +07:00',\n\t\t\tdefaultValue: '{{value}} Novosibirsk (RTZ 5)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Tomsk',\n\t\tlabel: t('timezone.asia_tomsk', { value: 'GMT +07:00', defaultValue: '{{value}} Tomsk' })\n\t},\n\t{\n\t\tvalue: 'Asia/Hong_Kong',\n\t\tlabel: t('timezone.asia_hong_kong', {\n\t\t\tvalue: 'GMT +08:00',\n\t\t\tdefaultValue: '{{value}} Beijing, Chongqing, Hong Kong, Urumqi'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Irkutsk',\n\t\tlabel: t('timezone.asia_irkutsk', {\n\t\t\tvalue: 'GMT +08:00',\n\t\t\tdefaultValue: '{{value}} Irkutsk (RTZ 7)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Kuala_Lumpur',\n\t\tlabel: t('timezone.asia_kuala_lumpur', {\n\t\t\tvalue: 'GMT +08:00',\n\t\t\tdefaultValue: '{{value}} Kuala Lumpur'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Singapore',\n\t\tlabel: t('timezone.asia_singapore', {\n\t\t\tvalue: 'GMT +08:00',\n\t\t\tdefaultValue: '{{value}} Singapore'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Taipei',\n\t\tlabel: t('timezone.asia_taipei', { value: 'GMT +08:00', defaultValue: '{{value}} Taipei' })\n\t},\n\t{\n\t\tvalue: 'Asia/Ulaanbaatar',\n\t\tlabel: t('timezone.asia_ulaanbaatar', {\n\t\t\tvalue: 'GMT +08:00',\n\t\t\tdefaultValue: '{{value}} Ulaanbaatar'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Australia/Perth',\n\t\tlabel: t('timezone.australia_perth', { value: 'GMT +08:00', defaultValue: '{{value}} Perth' })\n\t},\n\t{\n\t\tvalue: 'Australia/Eucla',\n\t\tlabel: t('timezone.australia_eucla', { value: 'GMT +08:45', defaultValue: '{{value}} Eucla' })\n\t},\n\t{\n\t\tvalue: 'Asia/Chita',\n\t\tlabel: t('timezone.asia_chita', { value: 'GMT +09:00', defaultValue: '{{value}} Chita' })\n\t},\n\t{\n\t\tvalue: 'Asia/Pyongyang',\n\t\tlabel: t('timezone.asia_pyongyang', {\n\t\t\tvalue: 'GMT +09:00',\n\t\t\tdefaultValue: '{{value}} Pyongyang'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Seoul',\n\t\tlabel: t('timezone.asia_seoul', { value: 'GMT +09:00', defaultValue: '{{value}} Korea' })\n\t},\n\t{\n\t\tvalue: 'Asia/Tokyo',\n\t\tlabel: t('timezone.asia_tokyo', { value: 'GMT +09:00', defaultValue: '{{value}} Japan' })\n\t},\n\t{\n\t\tvalue: 'Asia/Yakutsk',\n\t\tlabel: t('timezone.asia_yakutsk', {\n\t\t\tvalue: 'GMT +09:00',\n\t\t\tdefaultValue: '{{value}} Yakutsk (RTZ 8)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Australia/Adelaide',\n\t\tlabel: t('timezone.australia_adelaide', {\n\t\t\tvalue: 'GMT +09:30',\n\t\t\tdefaultValue: '{{value}} Adelaide'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Australia/Darwin',\n\t\tlabel: t('timezone.australia_darwin', { value: 'GMT +09:30', defaultValue: '{{value}} Darwin' })\n\t},\n\t{\n\t\tvalue: 'Asia/Vladivostok',\n\t\tlabel: t('timezone.asia_vladivostok', {\n\t\t\tvalue: 'GMT +10:00',\n\t\t\tdefaultValue: '{{value}} Vladivostok, Magadan (RTZ 9)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Australia/Brisbane',\n\t\tlabel: t('timezone.australia_brisbane', {\n\t\t\tvalue: 'GMT +10:00',\n\t\t\tdefaultValue: '{{value}} Brisbane'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Australia/Hobart',\n\t\tlabel: t('timezone.australia_hobart', { value: 'GMT +10:00', defaultValue: '{{value}} Hobart' })\n\t},\n\t{\n\t\tvalue: 'Australia/Sydney',\n\t\tlabel: t('timezone.australia_sydney', {\n\t\t\tvalue: 'GMT +10:00',\n\t\t\tdefaultValue: '{{value}} Canberra, Melbourne, Sydney'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Guam',\n\t\tlabel: t('timezone.pacific_guam', {\n\t\t\tvalue: 'GMT +10:00',\n\t\t\tdefaultValue: '{{value}} Guam, Port Moresby'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Australia/Lord_Howe',\n\t\tlabel: t('timezone.australia_lord_howe', {\n\t\t\tvalue: 'GMT +10:30',\n\t\t\tdefaultValue: '{{value}} Lord_Howe'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Asia/Magadan',\n\t\tlabel: t('timezone.asia_magadan', { value: 'GMT +11:00', defaultValue: '{{value}} Magadan' })\n\t},\n\t{\n\t\tvalue: 'Asia/Sakhalin',\n\t\tlabel: t('timezone.asia_sakhalin', { value: 'GMT +11:00', defaultValue: '{{value}} Sakhalin' })\n\t},\n\t{\n\t\tvalue: 'Asia/Srednekolymsk',\n\t\tlabel: t('timezone.asia_srednekolymsk', {\n\t\t\tvalue: 'GMT +11:00',\n\t\t\tdefaultValue: '{{value}} Chokurdakh (RTZ 10)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Bougainville',\n\t\tlabel: t('timezone.pacific_bougainville', {\n\t\t\tvalue: 'GMT +11:00',\n\t\t\tdefaultValue: '{{value}} Bougainville Standard Time'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Guadalcanal',\n\t\tlabel: t('timezone.pacific_guadalcanal', {\n\t\t\tvalue: 'GMT +11:00',\n\t\t\tdefaultValue: '{{value}} Solomon Is. / New Caledonia'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Norfolk',\n\t\tlabel: t('timezone.pacific_norfolk', { value: 'GMT +11:00', defaultValue: '{{value}} Norfolk' })\n\t},\n\t{\n\t\tvalue: 'Asia/Kamchatka',\n\t\tlabel: t('timezone.asia_kamchatka', {\n\t\t\tvalue: 'GMT +12:00',\n\t\t\tdefaultValue: '{{value}} Anadyr, Petropavlovsk-Kamchatsky (RTZ 11)'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Auckland',\n\t\tlabel: t('timezone.pacific_auckland', {\n\t\t\tvalue: 'GMT +12:00',\n\t\t\tdefaultValue: '{{value}} New Zealand'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Fiji',\n\t\tlabel: t('timezone.pacific_fiji', { value: 'GMT +12:00', defaultValue: '{{value}} Fiji' })\n\t},\n\t{\n\t\tvalue: 'Pacific/Chatham',\n\t\tlabel: t('timezone.pacific_chatham', { value: 'GMT +12:45', defaultValue: '{{value}} Chatham' })\n\t},\n\t{\n\t\tvalue: 'Pacific/Apia',\n\t\tlabel: t('timezone.pacific_apia', { value: 'GMT +13:00', defaultValue: '{{value}} Samoa' })\n\t},\n\t{\n\t\tvalue: 'Pacific/Tongatapu',\n\t\tlabel: t('timezone.pacific_tongatapu', {\n\t\t\tvalue: 'GMT +13:00',\n\t\t\tdefaultValue: '{{value}} Nuku’alofa'\n\t\t})\n\t},\n\t{\n\t\tvalue: 'Pacific/Kiritimati',\n\t\tlabel: t('timezone.pacific_kiritimati', {\n\t\t\tvalue: 'GMT +14:00',\n\t\t\tdefaultValue: '{{value}} Kiritimati Island'\n\t\t})\n\t}\n];\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport { TFunction } from 'react-i18next';\nimport { SettingsSubSection } from '../../types';\n\nexport const themeSubSection = (t: TFunction): SettingsSubSection => ({\n\tlabel: t('settings.general.theme_options', 'Theme Options'),\n\tid: 'theme_options'\n});\nexport const timezoneAndLanguageSubSection = (t: TFunction): SettingsSubSection => ({\n\tlabel: t('settings.timezone_and_language', 'Time Zone and Language'),\n\tid: 'timezone_and_language'\n});\nexport const outOfOfficeSubSection = (t: TFunction): SettingsSubSection => ({\n\tlabel: t('settings.out_of_office.headings.settings_label', 'Out of Office Settings'),\n\tid: 'out_of_office'\n});\nexport const searchPrefsSubSection = (t: TFunction): SettingsSubSection => ({\n\tlabel: t('search.app', 'Search'),\n\tid: 'search_prefs'\n});\nexport const versionsSubSection = (t: TFunction): SettingsSubSection => ({\n\tlabel: t('module.app.version', 'Application versions'),\n\tid: 'app_version'\n});\nexport const quotaSubSection = (t: TFunction): SettingsSubSection => ({\n\tlabel: t('user_quota.title', \"User's quota\"),\n\tid: 'user_quota'\n});\nexport const accountSubSection = (t: TFunction): SettingsSubSection => ({\n\tlabel: t('settings.general.account', 'Account'),\n\tid: 'account'\n});\n\nexport const settingsSubSections = (t: TFunction): Array<SettingsSubSection> => [\n\tthemeSubSection(t),\n\ttimezoneAndLanguageSubSection(t),\n\toutOfOfficeSubSection(t),\n\tsearchPrefsSubSection(t),\n\tversionsSubSection(t),\n\tquotaSubSection(t),\n\taccountSubSection(t)\n];\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useCallback, useState, FC, useMemo } from 'react';\nimport { Container, useSnackbar } from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { includes, isEmpty } from 'lodash';\nimport { useUserSettings } from '../store/account';\nimport Logout from './components/general-settings/logout';\nimport AppearanceSettings from './components/general-settings/appearance-settings';\nimport ModuleVersionSettings from './components/general-settings/module-version-settings';\nimport OutOfOfficeSettings from './components/general-settings/out-of-office-view';\nimport UserQuota from './components/general-settings/user-quota';\nimport { editSettings } from '../network/edit-settings';\nimport { Mods } from '../../types';\nimport LanguageAndTimeZoneSettings from './language-and-timezone-settings';\nimport SearchSettingsView from './search-settings-view';\nimport SettingsHeader from './components/settings-header';\n\nconst GeneralSettings: FC = () => {\n\tconst [mods, setMods] = useState<Mods>({});\n\tconst [t] = useTranslation();\n\tconst settings = useUserSettings();\n\tconst [open, setOpen] = useState(false);\n\tconst addMod = useCallback((type: 'props' | 'prefs', key, value) => {\n\t\tsetMods((m) => ({\n\t\t\t...m,\n\t\t\t[type]: {\n\t\t\t\t...m?.[type],\n\t\t\t\t[key]: value\n\t\t\t}\n\t\t}));\n\t}, []);\n\tconst createSnackbar = useSnackbar();\n\n\tconst onSave = useCallback(() => {\n\t\teditSettings(mods)\n\t\t\t.then(() => {\n\t\t\t\tif (mods.prefs && includes(Object.keys(mods.prefs), 'zimbraPrefLocale')) {\n\t\t\t\t\tsetOpen(true);\n\t\t\t\t}\n\t\t\t\tcreateSnackbar({\n\t\t\t\t\tkey: `new`,\n\t\t\t\t\treplace: true,\n\t\t\t\t\ttype: 'info',\n\t\t\t\t\tlabel: t('message.snackbar.settings_saved', 'Edits saved correctly'),\n\t\t\t\t\tautoHideTimeout: 3000,\n\t\t\t\t\thideButton: true\n\t\t\t\t});\n\t\t\t})\n\t\t\t.catch(() => {\n\t\t\t\tcreateSnackbar({\n\t\t\t\t\tkey: `new`,\n\t\t\t\t\treplace: true,\n\t\t\t\t\ttype: 'error',\n\t\t\t\t\tlabel: t('snackbar.error', 'Something went wrong, please try again'),\n\t\t\t\t\tautoHideTimeout: 3000,\n\t\t\t\t\thideButton: true\n\t\t\t\t});\n\t\t\t});\n\t\tsetMods({});\n\t}, [createSnackbar, mods, t]);\n\tconst onCancel = useCallback(() => {\n\t\tsetMods({});\n\t}, []);\n\tconst isDirty = useMemo(() => !isEmpty(mods), [mods]);\n\tconst title = useMemo(() => t('settings.general.general', 'General Settings'), [t]);\n\n\treturn (\n\t\t<>\n\t\t\t<SettingsHeader title={title} onCancel={onCancel} onSave={onSave} isDirty={isDirty} />\n\t\t\t<Container\n\t\t\t\tbackground=\"gray5\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tpadding={{ all: 'medium' }}\n\t\t\t\tstyle={{ overflow: 'auto' }}\n\t\t\t>\n\t\t\t\t<AppearanceSettings settings={settings} addMod={addMod} />\n\t\t\t\t<LanguageAndTimeZoneSettings\n\t\t\t\t\tsettings={settings}\n\t\t\t\t\taddMod={addMod}\n\t\t\t\t\topen={open}\n\t\t\t\t\tsetOpen={setOpen}\n\t\t\t\t/>\n\n\t\t\t\t<OutOfOfficeSettings settings={settings} addMod={addMod} />\n\t\t\t\t<SearchSettingsView settings={settings} addMod={addMod} />\n\t\t\t\t<ModuleVersionSettings />\n\t\t\t\t<UserQuota mobileView={false} />\n\t\t\t\t<Logout />\n\t\t\t</Container>\n\t\t</>\n\t);\n};\n\nexport default GeneralSettings;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useCallback, FC, useMemo } from 'react';\nimport {\n\tContainer,\n\tFormSubSection,\n\tModal,\n\tSelect,\n\tText,\n\tPadding,\n\tSelectItem\n} from '@zextras/carbonio-design-system';\n\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport momentLocalizer from 'react-widgets-moment';\nimport { useTranslation } from 'react-i18next';\nimport { find } from 'lodash';\nimport { AccountSettings } from '../../types';\nimport { LocaleDescriptor, localeList, timeZoneList } from './components/utils';\nimport { timezoneAndLanguageSubSection } from './general-settings-sub-sections';\n\nmomentLocalizer();\n\nconst LanguageAndTimeZone: FC<{\n\tsettings: AccountSettings;\n\topen: boolean;\n\tsetOpen: (arg: boolean) => any;\n\taddMod: (type: 'prefs' | 'props', key: string, value: { value: any; app: string }) => void;\n}> = ({ settings, addMod, open, setOpen }) => {\n\tconst { t } = useTranslation();\n\tconst locales = useMemo(() => localeList(t), [t]);\n\tconst timezones = useMemo(() => timeZoneList(t), [t]);\n\n\tconst updatePrefs = useCallback(\n\t\t(v, p) => {\n\t\t\taddMod('prefs', p, v);\n\t\t},\n\t\t[addMod]\n\t);\n\n\tconst defaultLocale = useMemo(() => {\n\t\tconst localeId = (settings.prefs.zimbraPrefLocale as string) ?? 'en';\n\t\tconst locale = find(locales, { id: localeId });\n\t\treturn locale ?? find(locales, { id: 'en' });\n\t}, [locales, settings.prefs.zimbraPrefLocale]);\n\n\tconst defaultTimeZone = useMemo(() => {\n\t\tconst timeZoneId = (settings.prefs.zimbraPrefTimeZoneId as string) ?? 'UTC';\n\t\tconst timezone = find(timezones, { value: timeZoneId });\n\t\treturn timezone ?? find(timezones, { value: 'UTC' });\n\t}, [timezones, settings.prefs.zimbraPrefTimeZoneId]);\n\n\tconst sectionTitle = useMemo(() => timezoneAndLanguageSubSection(t), [t]);\n\treturn (\n\t\t<FormSubSection\n\t\t\tlabel={sectionTitle.label}\n\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\twidth=\"50%\"\n\t\t\tid={sectionTitle.id}\n\t\t>\n\t\t\t<Container crossAlignment=\"baseline\" padding={{ all: 'small' }}>\n\t\t\t\t{Object.keys(settings.prefs).length > 0 && (\n\t\t\t\t\t<Select\n\t\t\t\t\t\titems={locales}\n\t\t\t\t\t\tbackground=\"gray5\"\n\t\t\t\t\t\tlabel={t('label.language', 'Language')}\n\t\t\t\t\t\tonChange={(value: any): void => {\n\t\t\t\t\t\t\tif (value && value !== settings.prefs.zimbraPrefLocale)\n\t\t\t\t\t\t\t\tupdatePrefs(value, 'zimbraPrefLocale');\n\t\t\t\t\t\t}}\n\t\t\t\t\t\tdefaultSelection={defaultLocale}\n\t\t\t\t\t\tshowCheckbox={false}\n\t\t\t\t\t\tdropdownMaxHeight=\"200px\"\n\t\t\t\t\t\tselectedBackgroundColor=\"highlight\"\n\t\t\t\t\t/>\n\t\t\t\t)}\n\t\t\t\t<Padding top=\"small\" width=\"100%\">\n\t\t\t\t\t{Object.keys(settings.prefs).length > 0 && timezones && (\n\t\t\t\t\t\t<Select\n\t\t\t\t\t\t\titems={timezones}\n\t\t\t\t\t\t\tbackground=\"gray5\"\n\t\t\t\t\t\t\tlabel={t('label.time_zone', 'Time Zone')}\n\t\t\t\t\t\t\tonChange={(value: any): void => {\n\t\t\t\t\t\t\t\tif (value && value !== settings.prefs.zimbraPrefTimeZoneId)\n\t\t\t\t\t\t\t\t\tupdatePrefs(value, 'zimbraPrefTimeZoneId');\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tselection={defaultTimeZone}\n\t\t\t\t\t\t\tshowCheckbox={false}\n\t\t\t\t\t\t\tdropdownMaxHeight=\"200px\"\n\t\t\t\t\t\t\tselectedBackgroundColor=\"highlight\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</Padding>\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={t('label.reload', 'Reload')}\n\t\t\t\t\topen={open}\n\t\t\t\t\tdismissLabel={t('label.no', 'No')}\n\t\t\t\t\tonConfirm={(): void => window.location.reload()}\n\t\t\t\t\tconfirmLabel={t('label.reload', 'Reload')}\n\t\t\t\t\tonClose={(): void => setOpen(false)}\n\t\t\t\t>\n\t\t\t\t\t<Text overflow=\"break-word\">\n\t\t\t\t\t\t{t(\n\t\t\t\t\t\t\t'message.reload',\n\t\t\t\t\t\t\t`\tWould you like to reload the application now to show the new language?\n\t\t\t\t\t\t\t(Otherwise, the new language will appear the next time you sign in.)`\n\t\t\t\t\t\t)}\n\t\t\t\t\t</Text>\n\t\t\t\t</Modal>\n\t\t\t</Container>\n\t\t</FormSubSection>\n\t);\n};\n\nexport default LanguageAndTimeZone;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useState, FC, useCallback, useEffect, useMemo } from 'react';\nimport { Container, FormSubSection, Checkbox } from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { AccountSettings } from '../../types';\nimport { searchPrefsSubSection } from './general-settings-sub-sections';\n\nconst SearchSettingsView: FC<{\n\tsettings: AccountSettings;\n\taddMod: (type: 'prefs' | 'props', key: string, value: { value: any; app: string }) => void;\n}> = ({ settings, addMod }) => {\n\tconst { t } = useTranslation();\n\tconst [searchInSpamFolder, setSearchInSpamFolder] = useState<boolean>(\n\t\tsettings.prefs.zimbraPrefIncludeSpamInSearch === 'TRUE'\n\t);\n\tconst [searchInTrashFolder, setSearchInTrashFolder] = useState<boolean>(\n\t\tsettings.prefs.zimbraPrefIncludeTrashInSearch === 'TRUE'\n\t);\n\tconst [searchInSharedFolder, setSearchInSharedFolder] = useState<boolean>(\n\t\tsettings.prefs.zimbraPrefIncludeSharedItemsInSearch === 'TRUE'\n\t);\n\tconst setMode = useCallback(\n\t\t(v, p) => {\n\t\t\tconst value: any = v ? 'TRUE' : 'FALSE';\n\t\t\taddMod('prefs', p, value);\n\t\t},\n\t\t[addMod]\n\t);\n\n\tuseEffect(() => {\n\t\tsetSearchInSpamFolder(settings.prefs.zimbraPrefIncludeSpamInSearch === 'TRUE');\n\t}, [settings.prefs.zimbraPrefIncludeSpamInSearch]);\n\tuseEffect(() => {\n\t\tsetSearchInTrashFolder(settings.prefs.zimbraPrefIncludeTrashInSearch === 'TRUE');\n\t}, [settings.prefs.zimbraPrefIncludeTrashInSearch]);\n\tuseEffect(() => {\n\t\tsetSearchInSharedFolder(settings.prefs.zimbraPrefIncludeSharedItemsInSearch === 'TRUE');\n\t}, [settings.prefs.zimbraPrefIncludeSharedItemsInSearch]);\n\n\tconst onClickSpam = useCallback(() => {\n\t\tsetSearchInSpamFolder(!searchInSpamFolder);\n\t\tsetMode(!searchInSpamFolder, 'zimbraPrefIncludeSpamInSearch');\n\t}, [searchInSpamFolder, setMode]);\n\tconst onClickTrash = useCallback(() => {\n\t\tsetSearchInTrashFolder(!searchInTrashFolder);\n\t\tsetMode(!searchInTrashFolder, 'zimbraPrefIncludeTrashInSearch');\n\t}, [searchInTrashFolder, setMode]);\n\tconst onClickShared = useCallback(() => {\n\t\tsetSearchInSharedFolder(!searchInSharedFolder);\n\t\tsetMode(!searchInSharedFolder, 'zimbraPrefIncludeSharedItemsInSearch');\n\t}, [searchInSharedFolder, setMode]);\n\tconst sectionTitle = useMemo(() => searchPrefsSubSection(t), [t]);\n\treturn (\n\t\t<FormSubSection\n\t\t\tlabel={sectionTitle.label}\n\t\t\tminWidth=\"calc(min(100%, 512px))\"\n\t\t\twidth=\"50%\"\n\t\t\tid={sectionTitle.id}\n\t\t>\n\t\t\t<Container crossAlignment=\"baseline\" padding={{ all: 'small' }}>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t'settings.search_settings.labels.include_search_in_spam_folder',\n\t\t\t\t\t\t'Include Spam Folder in Searches'\n\t\t\t\t\t)}\n\t\t\t\t\tvalue={searchInSpamFolder}\n\t\t\t\t\tonClick={onClickSpam}\n\t\t\t\t/>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t'settings.search_settings.labels.include_search_in_trash_folder',\n\t\t\t\t\t\t'Include Trash Folder in Searches'\n\t\t\t\t\t)}\n\t\t\t\t\tvalue={searchInTrashFolder}\n\t\t\t\t\tonClick={onClickTrash}\n\t\t\t\t/>\n\t\t\t\t<Checkbox\n\t\t\t\t\tlabel={t(\n\t\t\t\t\t\t'settings.search_settings.labels.include_search_in_shared_folder',\n\t\t\t\t\t\t'Include Shared Folder in Searches'\n\t\t\t\t\t)}\n\t\t\t\t\tvalue={searchInSharedFolder}\n\t\t\t\t\tonClick={onClickShared}\n\t\t\t\t/>\n\t\t\t</Container>\n\t\t</FormSubSection>\n\t);\n};\n\nexport default SearchSettingsView;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useMemo } from 'react';\nimport { Redirect, Route, Switch } from 'react-router-dom';\nimport { map } from 'lodash';\nimport { SETTINGS_APP_ID } from '../constants';\nimport AppContextProvider from '../boot/app/app-context-provider';\nimport { useAppStore } from '../store/app';\n\nexport const SettingsAppView: FC = () => {\n\tconst settingsViews = useAppStore((s) => s.views.settings);\n\tconst routes = useMemo(\n\t\t() =>\n\t\t\tmap(settingsViews, (view) => (\n\t\t\t\t<Route key={view.route} exact path={`/${SETTINGS_APP_ID}/${view.route}`}>\n\t\t\t\t\t<AppContextProvider pkg={view.app}>\n\t\t\t\t\t\t<view.component />\n\t\t\t\t\t</AppContextProvider>\n\t\t\t\t</Route>\n\t\t\t)),\n\t\t[settingsViews]\n\t);\n\treturn (\n\t\t<Switch>\n\t\t\t{routes}\n\t\t\t<Redirect from={`/${SETTINGS_APP_ID}`} exact strict to={`/${SETTINGS_APP_ID}/general`} />\n\t\t</Switch>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useMemo } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { Accordion, Tooltip, IconButton } from '@zextras/carbonio-design-system';\nimport { map, startsWith } from 'lodash';\nimport { SETTINGS_APP_ID } from '../constants';\nimport { useAppStore } from '../store/app';\n\nexport const SettingsSidebar: FC<{ expanded: boolean }> = ({ expanded }) => {\n\tconst settingsViews = useAppStore((s) => s.views.settings);\n\tconst history = useHistory();\n\tconst location = useLocation();\n\tconst items = useMemo(\n\t\t() =>\n\t\t\tsettingsViews.map((view) => ({\n\t\t\t\tid: view.route,\n\t\t\t\tlabel: view.label,\n\t\t\t\ticon: view.icon,\n\t\t\t\tactive: location.pathname === `/${SETTINGS_APP_ID}/${view.route}` && location.search === '',\n\t\t\t\tdisableHover:\n\t\t\t\t\tlocation.pathname === `/${SETTINGS_APP_ID}/${view.route}` && location.search === '',\n\t\t\t\tonClick: (e: KeyboardEvent | React.SyntheticEvent): void => {\n\t\t\t\t\te.stopPropagation();\n\t\t\t\t\thistory.push(`/${SETTINGS_APP_ID}/${view.route}`);\n\t\t\t\t},\n\t\t\t\titems: map(view.subSections, (item) => ({\n\t\t\t\t\t...item,\n\t\t\t\t\tactive: location.search === `?section=${item.id}`,\n\t\t\t\t\tdisableHover: location.search === `?section=${item.id}`,\n\t\t\t\t\tonClick: (e: KeyboardEvent | React.SyntheticEvent): void => {\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\thistory.replace(`/${SETTINGS_APP_ID}/${view.route}?section=${item.id}`);\n\t\t\t\t\t}\n\t\t\t\t}))\n\t\t\t})),\n\t\t[history, location.pathname, location.search, settingsViews]\n\t);\n\tconst collapsedItems = useMemo(\n\t\t() =>\n\t\t\tsettingsViews.map((v) => (\n\t\t\t\t<Tooltip label={v.label} placement=\"right\" key={v.id}>\n\t\t\t\t\t<div>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\ticon={v.icon}\n\t\t\t\t\t\t\tonClick={(): void => history.push(`/${SETTINGS_APP_ID}/${v.route}`)}\n\t\t\t\t\t\t\tsize=\"large\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Tooltip>\n\t\t\t)),\n\t\t[history, settingsViews]\n\t);\n\treturn expanded ? <Accordion items={items} /> : <>{collapsedItems}</>;\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useMemo } from 'react';\nimport { Redirect, Route, Switch, useLocation } from 'react-router-dom';\nimport styled from 'styled-components';\nimport { map, find } from 'lodash';\nimport { Container } from '@zextras/carbonio-design-system';\nimport AppContextProvider from '../boot/app/app-context-provider';\nimport { useAppList, useAppStore, useRoutes } from '../store/app';\n\nconst _BoardsRouterContainer = styled(Container)`\n\tflex-grow: 1;\n\tflex-basis: 0;\n\tmin-width: 1px;\n\tmax-height: calc(100vh - 60px);\n\toverflow-y: auto;\n`;\n\nconst FirstAppRedirect: FC = () => {\n\tconst apps = useAppList();\n\tconst routes = useRoutes();\n\tconst location = useLocation();\n\tconst mainRoute = useMemo(\n\t\t() => find(routes, (r) => apps[0]?.name === r.app)?.route,\n\t\t[apps, routes]\n\t);\n\treturn mainRoute && location?.pathname === '/' ? (\n\t\t<Redirect exact strict from=\"/\" to={`/${mainRoute}`} />\n\t) : null;\n};\n\nconst AppViewContainer: FC = () => {\n\tconst appViews = useAppStore((s) => s.views.appView);\n\tconst routes = useMemo(\n\t\t() => [\n\t\t\t...map(appViews, (view) => (\n\t\t\t\t<Route key={view.id} path={`/${view.route}`}>\n\t\t\t\t\t<AppContextProvider key={view.app} pkg={view.app}>\n\t\t\t\t\t\t<view.component />\n\t\t\t\t\t</AppContextProvider>\n\t\t\t\t</Route>\n\t\t\t))\n\t\t],\n\t\t[appViews]\n\t);\n\n\treturn (\n\t\t<_BoardsRouterContainer>\n\t\t\t<Container mainAlignment=\"flex-start\">\n\t\t\t\t<Switch>{routes}</Switch>\n\t\t\t\t<FirstAppRedirect />\n\t\t\t</Container>\n\t\t</_BoardsRouterContainer>\n\t);\n};\n\nexport default AppViewContainer;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC, forwardRef } from 'react';\nimport { Container, ContainerProps, Text } from '@zextras/carbonio-design-system';\nimport styled from 'styled-components';\nimport { BadgeInfo } from '../../types';\n\nconst MiniBadge = styled(Container)<{ badge: BadgeInfo }>`\n\tposition: absolute;\n\tbottom: 25%;\n\tright: 25%;\n\ttransform: translate(30%, 30%);\n\tbackground: ${({ badge, theme }): string => theme.palette[badge?.color ?? 'primary'].regular};\n\tmin-width: 12px;\n\tmin-height: 12px;\n\tline-height: 12px;\n\tborder-radius: 8px;\n\tuser-select: none;\n\tcursor: pointer;\n\tpointer-events: none;\n\tz-index: 99;\n`;\n\n// eslint-disable-next-line react/display-name\nconst BadgeWrap: FC<{ badge: BadgeInfo }> = forwardRef<HTMLDivElement, { badge: BadgeInfo }>(\n\t({ badge, children }, ref) => (\n\t\t<Container width={48} height={48} style={{ position: 'relative' }} ref={ref}>\n\t\t\t{badge.show && (\n\t\t\t\t<MiniBadge badge={badge} height=\"fit\" width=\"fit\">\n\t\t\t\t\t{badge.showCount ? (\n\t\t\t\t\t\t<Text size=\"extrasmall\" style={{ padding: '2px 4px', fontSize: '10px' }} color=\"gray6\">\n\t\t\t\t\t\t\t{badge.count ?? 0}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t) : null}\n\t\t\t\t</MiniBadge>\n\t\t\t)}\n\t\t\t{children}\n\t\t</Container>\n\t)\n);\n\nexport default BadgeWrap;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC } from 'react';\nimport styled, { css } from 'styled-components';\nimport { isEmpty, map } from 'lodash';\nimport {\n\tContainer,\n\tDivider,\n\tIconButton,\n\tRow,\n\tPadding,\n\tTooltip\n} from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport {\n\tcloseAllBoards,\n\texpandBoards,\n\tminimizeBoards,\n\tonGoToPanel,\n\treduceBoards,\n\tuseBoardStore\n} from '../../store/boards';\nimport { TabsList } from './board-tab-list';\nimport { AppBoard } from './board';\n\nconst BoardContainerComp = styled.div<{ expanded: boolean; minimized: boolean }>`\n\tposition: fixed;\n\ttop: 60px;\n\tbottom: 0;\n\tleft: 48px;\n\tright: 0;\n\tbackground-color: rgba(0, 0, 0, 0);\n\tpointer-events: none;\n\tz-index: 10;\n\t${({ expanded }): any =>\n\t\texpanded &&\n\t\tcss`\n\t\t\tbackground-color: rgba(0, 0, 0, 0.5);\n\t\t\tpointer-events: auto;\n\t\t`}\n\t${({ minimized }): any =>\n\t\tminimized &&\n\t\tcss`\n\t\t\tdisplay: none;\n\t\t`}\n`;\nconst Board = styled(Container)<{ expanded: boolean }>`\n\tz-index: 5;\n\tposition: absolute;\n\tleft: 24px;\n\tbottom: 0;\n\twidth: 700px;\n\theight: 70vh;\n\tmin-height: 400px;\n\tbox-shadow: 0 2px 5px 0 rgba(125, 125, 125, 0.5);\n\tpointer-events: auto;\n\t${({ expanded }): any =>\n\t\texpanded &&\n\t\tcss`\n\t\t\theight: calc(100% - 24px);\n\t\t\twidth: calc(100% - 24px * 2);\n\t\t\tmin-height: auto;\n\t\t`}\n`;\nconst BoardHeader = styled(Row)``;\nconst BoardDetailContainer = styled(Row)`\n\tmin-height: 0;\n`;\nconst BackButton = styled(IconButton)``;\nconst Actions = styled(Row)``;\n\nexport const BoardContainer: FC = () => {\n\tconst [t] = useTranslation();\n\tconst { boards, minimized, expanded, current } = useBoardStore();\n\tif (isEmpty(boards) || !current) return null;\n\treturn (\n\t\t<BoardContainerComp expanded={expanded} minimized={minimized}>\n\t\t\t<Board background=\"gray6\" crossAlignment=\"unset\" expanded={expanded}>\n\t\t\t\t<BoardHeader background=\"gray5\">\n\t\t\t\t\t<Padding all=\"extrasmall\">\n\t\t\t\t\t\t<Tooltip label={t('board.hide', 'Hide board')} placement=\"top\">\n\t\t\t\t\t\t\t<BackButton icon=\"BoardCollapseOutline\" onClick={minimizeBoards} />\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</Padding>\n\t\t\t\t\t<TabsList />\n\t\t\t\t\t<Actions padding={{ all: 'extrasmall' }}>\n\t\t\t\t\t\t{boards[current]?.context?.onReturnToApp && (\n\t\t\t\t\t\t\t<Padding right=\"extrasmall\">\n\t\t\t\t\t\t\t\t<Tooltip label={t('board.open_app', 'Open in app')} placement=\"top\">\n\t\t\t\t\t\t\t\t\t<IconButton icon={'DiagonalArrowRightUp'} onClick={onGoToPanel} />\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<Padding right=\"extrasmall\">\n\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\texpanded ? t('board.reduce', 'Reduce board') : t('board.enlarge', 'Enlarge board')\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\t\t\ticon={expanded ? 'CollapseOutline' : 'ExpandOutline'}\n\t\t\t\t\t\t\t\t\tonClick={expanded ? reduceBoards : expandBoards}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t\t<Tooltip label={t('board.close_tabs', 'Close all your tabs')} placement=\"top\">\n\t\t\t\t\t\t\t<IconButton icon=\"CloseOutline\" onClick={closeAllBoards} />\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</Actions>\n\t\t\t\t</BoardHeader>\n\t\t\t\t<Divider style={{ height: '2px' }} />\n\t\t\t\t<BoardDetailContainer takeAvailableSpace>\n\t\t\t\t\t{map(boards, (b) => (\n\t\t\t\t\t\t<AppBoard key={b.id} board={b} />\n\t\t\t\t\t))}\n\t\t\t\t</BoardDetailContainer>\n\t\t\t</Board>\n\t\t</BoardContainerComp>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { map, noop, slice } from 'lodash';\nimport React, { useRef, useLayoutEffect, FC } from 'react';\nimport {\n\tContainer,\n\tRow,\n\tDropdown,\n\tButton,\n\tuseHiddenCount,\n\tTooltip\n} from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { setCurrentBoard, useBoardStore } from '../../store/boards';\nimport { AppBoardTab } from './board-tab';\n\nexport const TabsList: FC = () => {\n\tconst [t] = useTranslation();\n\tconst { boards, current, expanded } = useBoardStore();\n\tconst tabContainerRef = useRef(null);\n\tconst [hiddenTabsCount, recalculateHiddenTabs] = useHiddenCount(tabContainerRef, expanded);\n\n\tuseLayoutEffect(() => {\n\t\trecalculateHiddenTabs();\n\t\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\t}, [boards, expanded, tabContainerRef.current]);\n\n\treturn (\n\t\t<Row wrap=\"nowrap\" height=\"100%\" mainAlignment=\"flex-start\" takeAvailableSpace>\n\t\t\t<Row\n\t\t\t\tref={tabContainerRef}\n\t\t\t\theight=\"48px\"\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tstyle={{ overflow: 'hidden' }}\n\t\t\t\twidth=\"calc(100% - 8px)\"\n\t\t\t>\n\t\t\t\t{boards &&\n\t\t\t\t\tmap(boards, (tab) => (\n\t\t\t\t\t\t<AppBoardTab key={tab.id} id={tab.id} title={tab.title} icon={tab.icon} />\n\t\t\t\t\t))}\n\t\t\t</Row>\n\t\t\t{hiddenTabsCount > 0 && (\n\t\t\t\t<>\n\t\t\t\t\t<Container width=\"fit\" padding={{ horizontal: 'extrasmall', vertical: 'extrasmall' }}>\n\t\t\t\t\t\t<Container width=\"1px\" height=\"fill\" background=\"gray3\" />\n\t\t\t\t\t</Container>\n\t\t\t\t\t<Tooltip label={t('board.show_tabs', 'Show other tabs')} placement=\"top\">\n\t\t\t\t\t\t<Dropdown\n\t\t\t\t\t\t\twidth=\"fit\"\n\t\t\t\t\t\t\tstyle={{ flexGrow: '1' }}\n\t\t\t\t\t\t\titems={map(slice(Object.values(boards), -hiddenTabsCount), (tab) => ({\n\t\t\t\t\t\t\t\tid: tab.id,\n\t\t\t\t\t\t\t\tlabel: tab.title,\n\t\t\t\t\t\t\t\ticon: tab.icon,\n\t\t\t\t\t\t\t\tclick: () => setCurrentBoard(tab.id),\n\t\t\t\t\t\t\t\tselected: tab.id === current\n\t\t\t\t\t\t\t}))}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Button type=\"ghost\" color=\"secondary\" label={`+${hiddenTabsCount}`} onClick={noop} />\n\t\t\t\t\t\t</Dropdown>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t</>\n\t\t\t)}\n\t\t</Row>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useCallback } from 'react';\nimport styled from 'styled-components';\nimport { useTranslation } from 'react-i18next';\nimport {\n\tIconButton,\n\tText,\n\tRow,\n\tPadding,\n\tIcon,\n\tContainer,\n\tTooltip,\n\tRowProps\n} from '@zextras/carbonio-design-system';\nimport { closeBoard, setCurrentBoard, useBoardStore } from '../../store/boards';\n\nconst TabContainer = styled(Row)<RowProps & { active: boolean }>`\n\tcursor: pointer;\n\theight: 28px;\n\twidth: fit-content;\n\tuser-select: none;\n\tbackground-color: ${({ theme, active }): string =>\n\t\tactive ? theme.palette.gray3.regular : theme.palette.gray5.regular};\n\tborder-radius: 2px;\n\tpadding: 2px 4px;\n`;\n\nconst VerticalDivider = styled(Container)`\n\twidth: 1px;\n\theight: 100%;\n\tbackground: ${({ theme }): string => theme.palette.gray3.regular};\n\tmargin: ${({ theme }): string => theme.sizes.padding.extrasmall};\n`;\n\nexport const AppBoardTab: FC<{ id: string; icon: string; title: string }> = ({\n\tid,\n\ticon,\n\ttitle\n}) => {\n\tconst current = useBoardStore((s) => s.current);\n\tconst [t] = useTranslation();\n\tconst onClick = useCallback(() => setCurrentBoard(id), [id]);\n\tconst onRemove = useCallback(\n\t\t(ev) => {\n\t\t\tev.stopPropagation();\n\t\t\tcloseBoard(id);\n\t\t},\n\t\t[id]\n\t);\n\n\treturn (\n\t\t<Container orientation=\"row\" width=\"fit\" maxWidth=\"100%\">\n\t\t\t{current !== id && <VerticalDivider />}\n\t\t\t<TabContainer active={current === id} padding={{ all: 'extrasmall' }}>\n\t\t\t\t<Row\n\t\t\t\t\theight=\"100%\"\n\t\t\t\t\tonClick={onClick}\n\t\t\t\t\ttakeAvailableSpace\n\t\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\t\twrap=\"nowrap\"\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={icon} size=\"large\" />\n\t\t\t\t\t<Padding right=\"small\" />\n\t\t\t\t\t<Tooltip label={title} placement=\"top\" maxWidth=\"700px\">\n\t\t\t\t\t\t<Text\n\t\t\t\t\t\t\tsize=\"medium\"\n\t\t\t\t\t\t\tweight=\"regular\"\n\t\t\t\t\t\t\tcolor={current === id ? 'text' : 'secondary'}\n\t\t\t\t\t\t\toverflow=\"ellipsis\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{title}\n\t\t\t\t\t\t</Text>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t</Row>\n\t\t\t\t<Padding right=\"small\" />\n\t\t\t\t<Tooltip label={t('board.close_tab', 'Close Tab')} placement=\"top\">\n\t\t\t\t\t<IconButton\n\t\t\t\t\t\ticonColor=\"secondary\"\n\t\t\t\t\t\ticon=\"Close\"\n\t\t\t\t\t\tonClick={onRemove}\n\t\t\t\t\t\tstyle={{ padding: '2px', width: '24px', height: '24px' }}\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t</TabContainer>\n\t\t</Container>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useEffect, useMemo } from 'react';\nimport { Route, Router, useHistory } from 'react-router-dom';\nimport styled from 'styled-components';\nimport { find, startsWith } from 'lodash';\nimport { createMemoryHistory } from 'history';\nimport AppContextProvider from '../../boot/app/app-context-provider';\nimport { useAppStore } from '../../store/app';\nimport { BoardProvider, updateBoard, useBoardStore } from '../../store/boards';\nimport { Board } from '../../../types';\n\nconst BoardContainer = styled.div<{ show: boolean }>`\n\tdisplay: ${(props): string => (props.show ? 'block' : 'none')};\n\theight: 100%;\n\twidth: 100%;\n\toverflow-y: auto;\n\t&::-webkit-scrollbar {\n\t\twidth: 8px;\n\t}\n\n\t&::-webkit-scrollbar-track {\n\t\tbackground-color: transparent;\n\t}\n\n\t&::-webkit-scrollbar-thumb {\n\t\tbackground-color: ${({ theme }): string => theme.palette.gray3.regular};\n\t\tborder-radius: 4px;\n\t}\n`;\n\nexport const AppBoard: FC<{ board: Board }> = ({ board }) => {\n\tconst current = useBoardStore((s) => s.current);\n\t// eslint-disable-next-line react-hooks/exhaustive-deps\n\tconst history = useMemo(() => createMemoryHistory({ initialEntries: [board.url] }), []);\n\tconst boardViews = useAppStore((s) => s.views.board);\n\tconst windowHistory = useHistory();\n\tconst route = useMemo(() => {\n\t\tconst view = find(boardViews, (v) => v.id === board.url || startsWith(board.url, v.route));\n\t\tconsole.log(view, board.url);\n\t\tif (view)\n\t\t\treturn (\n\t\t\t\t<Route key={view.id} path={view.route}>\n\t\t\t\t\t<AppContextProvider key={view.id} pkg={view.app}>\n\t\t\t\t\t\t<BoardProvider id={board.id}>\n\t\t\t\t\t\t\t<view.component windowHistory={windowHistory} />\n\t\t\t\t\t\t</BoardProvider>\n\t\t\t\t\t</AppContextProvider>\n\t\t\t\t</Route>\n\t\t\t);\n\t\treturn null;\n\t}, [board.id, board.url, boardViews, windowHistory]);\n\tuseEffect(() => {\n\t\tconst unlisten = history.listen(({ location }) => {\n\t\t\tif (`${location.pathname}${location.search}${location.hash}` !== board.url) {\n\t\t\t\tupdateBoard(board.id, { url: `${location.pathname}${location.search}${location.hash}` });\n\t\t\t}\n\t\t});\n\t\treturn () => {\n\t\t\tunlisten();\n\t\t};\n\t}, [board.url, board.id, history]);\n\n\tuseEffect(() => {\n\t\tconst l = history.location;\n\t\tif (`${l.pathname}${l.search}${l.hash}` !== board.url) {\n\t\t\thistory.push(board.url);\n\t\t}\n\t}, [board.url, history]);\n\n\treturn (\n\t\t<BoardContainer show={current === board.id}>\n\t\t\t<Router history={history}>{route}</Router>\n\t\t</BoardContainer>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FunctionComponent } from 'react';\nimport styled from 'styled-components';\nimport { Icon } from '@zextras/carbonio-design-system';\n\nconst VerticalDivider = styled.div`\n\tposition: relative;\n\toverflow: visible;\n\theight: 100%;\n\twidth: 1px;\n\tmax-width: 1px;\n\tmin-width: 1px;\n\tbackground-color: ${({ theme }): string => theme.palette.gray2.regular};\n\ttransition: background 0.2s;\n\t&:hover {\n\t\tbackground-color: ${({ theme }): string => theme.palette.gray2.hover};\n\t}\n`;\n\nconst Bubble = styled.div<{ open: boolean }>`\n\tcursor: pointer;\n\tz-index: 2;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tposition: absolute;\n\ttop: 50%;\n\tleft: -12px;\n\twidth: 24px;\n\theight: 24px;\n\tborder-radius: 50%;\n\tbackground-color: ${({ theme }): string => theme.palette.gray2.regular};\n\ttransition: background-color 0.2s, transform 0.2s;\n\ttransform: scaleX(${({ open }): number => (open ? 1 : -1)});\n\t&:hover {\n\t\tbackground-color: ${({ theme }): string => theme.palette.gray2.hover};\n\t}\n\t&:active {\n\t\tbackground-color: ${({ theme }): string => theme.palette.gray2.active};\n\t}\n`;\n\nexport const Collapser: FunctionComponent<{ open: boolean; onClick: () => void }> = ({\n\topen,\n\tonClick\n}) => (\n\t<VerticalDivider>\n\t\t<Bubble onClick={onClick} open={open}>\n\t\t\t<Icon size=\"medium\" icon=\"ChevronLeft\" />\n\t\t</Bubble>\n\t</VerticalDivider>\n);\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useCallback, useMemo, useState } from 'react';\nimport { reduce, groupBy, noop } from 'lodash';\nimport { MultiButton, Button, Dropdown } from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\nimport { useLocation } from 'react-router-dom';\nimport { Location } from 'history';\nimport { useActions } from '../store/integrations/hooks';\nimport { ACTION_TYPES } from '../constants';\nimport { Action, AppRoute } from '../../types';\nimport { useAppList } from '../store/app';\nimport { useCurrentRoute } from '../history/hooks';\n\nexport const CreationButtonComponent: FC<{ activeRoute: AppRoute; location: Location }> = ({\n\tactiveRoute,\n\tlocation\n}) => {\n\tconst [t] = useTranslation();\n\tconst actions = useActions({ activeRoute, location }, ACTION_TYPES.NEW);\n\tconst [open, setOpen] = useState(false);\n\tconst primaryAction = useMemo(\n\t\t() =>\n\t\t\tactions?.find?.(\n\t\t\t\t(a) => (a.group === activeRoute?.id || a.group === activeRoute?.app) && a.primary\n\t\t\t),\n\t\t[actions, activeRoute?.app, activeRoute?.id]\n\t);\n\tconst apps = useAppList();\n\tconst byApp = useMemo(() => groupBy(actions, 'group'), [actions]);\n\n\tconst secondaryActions = [\n\t\t...(byApp[activeRoute?.app ?? ''] ?? []),\n\t\t...reduce(\n\t\t\tapps,\n\t\t\t(acc, app, i) => {\n\t\t\t\tif (app.name !== activeRoute?.app && byApp[app.name]?.length > 0) {\n\t\t\t\t\tacc.push({ type: 'divider', label: '', id: `divider-${i}` }, ...byApp[app.name]);\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t[] as Array<Action | { type: 'divider'; id: string; label: string }>\n\t\t)\n\t];\n\n\tconst onClose = useCallback(() => {\n\t\tsetOpen(false);\n\t}, []);\n\tconst onOpen = useCallback(() => {\n\t\tsetOpen(true);\n\t}, []);\n\treturn primaryAction ? (\n\t\t<MultiButton\n\t\t\tsize=\"extralarge\"\n\t\t\tbackground=\"primary\"\n\t\t\tlabel={primaryAction?.label ?? t('new', 'New')}\n\t\t\tonClick={primaryAction?.click}\n\t\t\titems={secondaryActions}\n\t\t\tdisabledPrimary={!primaryAction || primaryAction?.disabled}\n\t\t\tdisabledSecondary={!secondaryActions?.length}\n\t\t/>\n\t) : (\n\t\t<Dropdown items={secondaryActions} onClose={onClose} onOpen={onOpen}>\n\t\t\t<Button\n\t\t\t\tsize=\"extralarge\"\n\t\t\t\tbackgroundColor=\"primary\"\n\t\t\t\tlabel={t('new', 'New')}\n\t\t\t\ticon={open ? 'ChevronUp' : 'ChevronDown'}\n\t\t\t\tonClick={noop}\n\t\t\t/>\n\t\t</Dropdown>\n\t);\n};\n\nconst MemoCreationButton = React.memo(CreationButtonComponent);\n\nexport const CreationButton: FC = () => {\n\tconst locationFull = useLocation() as Location;\n\tconst activeRoute = useCurrentRoute() as AppRoute;\n\n\tconst truncateLocation = (location: Location): Location => ({\n\t\t...location,\n\t\tpathname: location?.pathname?.split('/').slice(0, 2).join('/'),\n\t\tkey: ''\n\t});\n\n\tconst location = useMemo(() => truncateLocation(locationFull), [locationFull]);\n\treturn <MemoCreationButton activeRoute={activeRoute} location={location} />;\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable react-hooks/rules-of-hooks */\n\nimport { Dispatch, SetStateAction, useContext, useState } from 'react';\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport ShellContext from './shell-context';\n\nexport function useIsMobile(): boolean {\n\tconst { isMobile } = useContext(ShellContext);\n\treturn isMobile;\n}\n\nexport function useLocalStorage<T>(key: string, initialValue: T): [T, Dispatch<SetStateAction<T>>] {\n\tconst [storedValue, setStoredValue] = useState<T>(() => {\n\t\ttry {\n\t\t\tconst item = window.localStorage.getItem(key);\n\t\t\treturn item ? JSON.parse(item) : initialValue;\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t\treturn initialValue;\n\t\t}\n\t});\n\tconst setValue = (value: T | ((val: T) => T)): any => {\n\t\ttry {\n\t\t\tconst valueToStore = value instanceof Function ? value(storedValue) : value;\n\t\t\tsetStoredValue(valueToStore);\n\t\t\tlocalStorage.setItem(key, JSON.stringify(valueToStore));\n\t\t} catch (error) {\n\t\t\tconsole.error(error);\n\t\t}\n\t};\n\treturn [storedValue, setValue];\n}\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useMemo } from 'react';\nimport { useScreenMode } from '@zextras/carbonio-design-system';\nimport ShellContext from './shell-context';\n\nconst ShellContextProvider: FC<{ children: unknown }> = ({ children }) => {\n\tconst screenMode = useScreenMode();\n\n\tconst value = useMemo(\n\t\t() => ({\n\t\t\tisMobile: screenMode === 'mobile'\n\t\t}),\n\t\t[screenMode]\n\t);\n\n\treturn <ShellContext.Provider value={value}>{children}</ShellContext.Provider>;\n};\n\nexport default ShellContextProvider;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { createContext } from 'react';\n\nconst ShellContext = createContext({ isMobile: true });\n\nexport default ShellContext;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useState } from 'react';\nimport {\n\tContainer,\n\tIconButton,\n\tPadding,\n\tResponsive,\n\tuseScreenMode,\n\tCatcher,\n\tButton\n} from '@zextras/carbonio-design-system';\nimport { times } from 'lodash';\nimport Logo from '../svg/carbonio.svg';\nimport { SearchBar } from '../search/search-bar';\nimport { CreationButton } from './creation-button';\nimport { useAppStore } from '../store/app';\n\nconst ShellHeader: FC<{\n\tmobileNavIsOpen: boolean;\n\tonMobileMenuClick: () => void;\n}> = ({ mobileNavIsOpen, onMobileMenuClick, children }) => {\n\tconst screenMode = useScreenMode();\n\tconst searchEnabled = useAppStore((s) => s.views.search.length > 0);\n\treturn (\n\t\t<Container\n\t\t\torientation=\"horizontal\"\n\t\t\tbackground=\"gray3\"\n\t\t\twidth=\"fill\"\n\t\t\theight=\"60px\"\n\t\t\tminHeight=\"60px\"\n\t\t\tmaxHeight=\"60px\"\n\t\t\tmainAlignment=\"flex-start\"\n\t\t\tpadding={{\n\t\t\t\thorizontal: screenMode === 'desktop' ? 'large' : 'extrasmall',\n\t\t\t\tvertical: 'small'\n\t\t\t}}\n\t\t>\n\t\t\t<Catcher>\n\t\t\t\t<Container orientation=\"horizontal\" width=\"75%\" maxWidth=\"75%\" mainAlignment=\"flex-start\">\n\t\t\t\t\t<Responsive mode=\"mobile\">\n\t\t\t\t\t\t<Padding right=\"small\">\n\t\t\t\t\t\t\t<IconButton icon={mobileNavIsOpen ? 'Close' : 'Menu'} onClick={onMobileMenuClick} />\n\t\t\t\t\t\t</Padding>\n\t\t\t\t\t</Responsive>\n\t\t\t\t\t<Container width={250} height={32} crossAlignment=\"flex-start\">\n\t\t\t\t\t\t<Logo height=\"32px\" />\n\t\t\t\t\t</Container>\n\t\t\t\t\t<Padding horizontal=\"large\">\n\t\t\t\t\t\t<CreationButton />\n\t\t\t\t\t</Padding>\n\t\t\t\t\t<Responsive mode=\"desktop\">{searchEnabled && <SearchBar />}</Responsive>\n\t\t\t\t</Container>\n\t\t\t\t<Container orientation=\"horizontal\" width=\"25%\" mainAlignment=\"flex-end\">\n\t\t\t\t\t<Responsive mode=\"desktop\">{children}</Responsive>\n\t\t\t\t\t<Responsive mode=\"mobile\">\n\t\t\t\t\t\t<Container\n\t\t\t\t\t\t\torientation=\"horizontal\"\n\t\t\t\t\t\t\tmainAlignment=\"flex-end\"\n\t\t\t\t\t\t\tpadding={{ right: 'extrasmall' }}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{/* <Dropdown items={secondaryActions} placement=\"bottom-start\">\n\t\t\t\t\t\t\t<IconButton icon=\"Plus\" />\n\t\t\t\t\t\t</Dropdown> */}\n\t\t\t\t\t\t</Container>\n\t\t\t\t\t</Responsive>\n\t\t\t\t</Container>\n\t\t\t</Catcher>\n\t\t</Container>\n\t);\n};\nexport default ShellHeader;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { ComponentType, FC, FunctionComponent } from 'react';\nimport { reduce, find } from 'lodash';\nimport { Accordion, Collapse, Container, Padding } from '@zextras/carbonio-design-system';\nimport { useHistory } from 'react-router-dom';\nimport { AppRoute, SecondaryBarComponentProps } from '../../types';\nimport { useAppStore } from '../store/app';\nimport AppContextProvider from '../boot/app/app-context-provider';\nimport { getCurrentRoute } from '../history/hooks';\n\ntype SidebarComponentProps = {\n\titem: ShellMobileNavComponent;\n};\n\nconst SidebarComponent: FC<SidebarComponentProps> = ({ item }) =>\n\titem.secondary ? (\n\t\t<AppContextProvider pkg={item.id}>\n\t\t\t<item.secondary expanded={!!item.expanded} />\n\t\t</AppContextProvider>\n\t) : null;\n\ntype ShellMobileNavComponentProps = {\n\tmobileNavIsOpen: boolean;\n\tmenuTree: AppRoute;\n};\n\ntype ShellMobileNavComponent = {\n\tid: string;\n\tlabel: string;\n\ticon: string;\n\tsecondary?: ComponentType<SecondaryBarComponentProps>;\n\tonClick?: () => void;\n\tCustomComponent?: FunctionComponent<SidebarComponentProps> | null;\n\titems?: Array<ShellMobileNavComponent> | [];\n\texpanded?: boolean;\n};\n\nconst ShellMobileNavComponent: FC<ShellMobileNavComponentProps> = ({\n\tmobileNavIsOpen,\n\tmenuTree\n}) => {\n\tconst history = useHistory();\n\tconst views = useAppStore<any>((s) =>\n\t\treduce(\n\t\t\ts.routes,\n\t\t\t(acc: Array<ShellMobileNavComponent>, val) => {\n\t\t\t\tconst primary = find(s.views.primaryBar, (item) => item.id === val.id);\n\t\t\t\tconst secondary = find(s.views.secondaryBar, (item) => item.id === val.id);\n\t\t\t\tif (primary && primary.visible) {\n\t\t\t\t\tacc.push({\n\t\t\t\t\t\tid: `${val.app}-wrap`,\n\t\t\t\t\t\tlabel: primary.label,\n\t\t\t\t\t\ticon: typeof primary.component === 'string' ? primary.component : 'Cube',\n\t\t\t\t\t\tonClick: () => history.push(`/${val.route}`),\n\t\t\t\t\t\titems: secondary\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tid: secondary.id,\n\t\t\t\t\t\t\t\t\t\tlabel: secondary.id,\n\t\t\t\t\t\t\t\t\t\ticon: 'Cube',\n\t\t\t\t\t\t\t\t\t\tsecondary: secondary.component,\n\t\t\t\t\t\t\t\t\t\tCustomComponent: SidebarComponent\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: []\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t[]\n\t\t)\n\t);\n\n\treturn (\n\t\t<Container\n\t\t\theight=\"fill\"\n\t\t\twidth=\"fit\"\n\t\t\tbackground=\"gray5\"\n\t\t\tstyle={{\n\t\t\t\tposition: 'absolute',\n\t\t\t\tleft: 0,\n\t\t\t\ttop: 0,\n\t\t\t\tzIndex: 3\n\t\t\t}}\n\t\t>\n\t\t\t<Collapse orientation=\"horizontal\" open={mobileNavIsOpen} crossSize=\"100%\">\n\t\t\t\t<Container\n\t\t\t\t\twidth={256 + 48 + 12}\n\t\t\t\t\theight=\"fill\"\n\t\t\t\t\torientation=\"vertical\"\n\t\t\t\t\tmainAlignment=\"space-between\"\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tmaxHeight: 'calc(100vh - 48px)',\n\t\t\t\t\t\toverflowY: 'auto'\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<Container width=\"fill\" height=\"fit\" orientation=\"vertical\" mainAlignment=\"space-between\">\n\t\t\t\t\t\t<Accordion items={views} />\n\t\t\t\t\t</Container>\n\t\t\t\t\t<Container width=\"fill\" height=\"fit\" orientation=\"vertical\" mainAlignment=\"flex-end\">\n\t\t\t\t\t\t<Accordion items={[menuTree]} />\n\t\t\t\t\t\t<Padding vertical=\"medium\">{/* <UserQuota mobileView={true}/> */}</Padding>\n\t\t\t\t\t</Container>\n\t\t\t\t</Container>\n\t\t\t</Collapse>\n\t\t</Container>\n\t);\n};\n\nconst ShellMobileNavMemo = React.memo(ShellMobileNavComponent);\n\ntype ShellMobileNavProps = {\n\tmobileNavIsOpen: boolean;\n};\n\nconst ShellMobileNav: FC<ShellMobileNavProps> = ({ mobileNavIsOpen }) => {\n\tconst menuTree = getCurrentRoute() as AppRoute;\n\treturn <ShellMobileNavMemo menuTree={menuTree} mobileNavIsOpen={mobileNavIsOpen} />;\n};\n\nexport default ShellMobileNav;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC } from 'react';\nimport { Responsive, Container } from '@zextras/carbonio-design-system';\nimport ShellPrimaryBar from './shell-primary-bar';\nimport ShellSecondaryBar from './shell-secondary-bar';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport ShellMobileNav from './shell-mobile-nav';\n\ntype ShellNavigationBarProps = {\n\tmobileNavIsOpen: boolean;\n};\n\nconst ShellNavigationBar: FC<ShellNavigationBarProps> = ({ mobileNavIsOpen }) => (\n\t<Container\n\t\torientation=\"horizontal\"\n\t\tbackground=\"gray5\"\n\t\twidth=\"fit\"\n\t\theight=\"fill\"\n\t\tmainAlignment=\"flex-start\"\n\t\tcrossAlignment=\"flex-start\"\n\t>\n\t\t<Responsive mode=\"desktop\">\n\t\t\t<ShellPrimaryBar />\n\t\t\t<ShellSecondaryBar />\n\t\t</Responsive>\n\t\t<Responsive mode=\"mobile\">\n\t\t\t<ShellMobileNav mobileNavIsOpen={mobileNavIsOpen} />\n\t\t</Responsive>\n\t</Container>\n);\n\nexport default ShellNavigationBar;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { Container, IconButton, Row, Tooltip } from '@zextras/carbonio-design-system';\nimport { map, isEmpty, trim, filter, sortBy, noop } from 'lodash';\nimport React, { FC, useState, useEffect, useMemo } from 'react';\nimport styled from 'styled-components';\nimport { useHistory } from 'react-router-dom';\nimport { useAppStore } from '../store/app';\nimport { AppRoute, PrimaryAccessoryView, PrimaryBarView } from '../../types';\nimport BadgeWrap from './badge-wrap';\nimport AppContextProvider from '../boot/app/app-context-provider';\nimport { checkRoute } from '../utility-bar/utils';\nimport { IS_STANDALONE } from '../constants';\nimport { minimizeBoards, reopenBoards, useBoardStore } from '../store/boards';\nimport { useCurrentRoute } from '../history/hooks';\n\nconst ContainerWithDivider = styled(Container)`\n\tborder-right: 1px solid ${({ theme }): string => theme.palette.gray3.regular};\n`;\n\nconst ToggleBoardIcon: FC = () => {\n\tconst { minimized, boards } = useBoardStore();\n\tif (isEmpty(boards)) return null;\n\treturn (\n\t\t<IconButton\n\t\t\ticonColor=\"primary\"\n\t\t\ticon={minimized ? 'BoardOpen' : 'BoardCollapse'}\n\t\t\tonClick={minimized ? reopenBoards : minimizeBoards}\n\t\t\tsize=\"large\"\n\t\t/>\n\t);\n};\n\ntype PrimaryBarItemProps = {\n\tview: PrimaryBarView;\n\tactive: boolean;\n\tonClick: () => void;\n};\n\ntype PrimaryBarAccessoryItemProps = {\n\tview: PrimaryAccessoryView;\n};\n\nconst PrimaryBarElement: FC<PrimaryBarItemProps> = ({ view, active, onClick }) => (\n\t<Tooltip label={view.label} placement=\"right\" key={view.id}>\n\t\t<BadgeWrap badge={view.badge}>\n\t\t\t{typeof view.component === 'string' ? (\n\t\t\t\t<IconButton\n\t\t\t\t\ticon={view.component}\n\t\t\t\t\tbackgroundColor={active ? 'gray4' : 'gray6'}\n\t\t\t\t\ticonColor={active ? 'primary' : 'text'}\n\t\t\t\t\tonClick={onClick}\n\t\t\t\t\tsize=\"large\"\n\t\t\t\t\tdata-isselected={active}\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<view.component active={active} />\n\t\t\t)}\n\t\t</BadgeWrap>\n\t</Tooltip>\n);\n\nconst PrimaryBarAccessoryElement: FC<PrimaryBarAccessoryItemProps> = ({ view }) => (\n\t<Tooltip label={view.label} placement=\"right\" key={view.id}>\n\t\t<AppContextProvider key={view.id} pkg={view.app}>\n\t\t\t{typeof view.component === 'string' ? (\n\t\t\t\t<IconButton\n\t\t\t\t\ticon={view.component}\n\t\t\t\t\tbackgroundColor=\"gray6\"\n\t\t\t\t\ticonColor=\"text\"\n\t\t\t\t\tonClick={view.onClick ?? noop}\n\t\t\t\t\tsize=\"large\"\n\t\t\t\t/>\n\t\t\t) : (\n\t\t\t\t<view.component />\n\t\t\t)}\n\t\t</AppContextProvider>\n\t</Tooltip>\n);\n\nconst ShellPrimaryBarComponent: FC<{ activeRoute: AppRoute }> = ({ activeRoute }) => {\n\tconst primaryBarViews = useAppStore((s) => s.views.primaryBar);\n\tconst [routes, setRoutes] = useState<Record<string, string>>({});\n\tconst history = useHistory();\n\n\tuseEffect(() => {\n\t\tsetRoutes((r) =>\n\t\t\tprimaryBarViews.reduce((acc, v) => {\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\tif (!acc[v.id]) acc[v.id] = v.route;\n\t\t\t\treturn acc;\n\t\t\t}, r)\n\t\t);\n\t}, [primaryBarViews]);\n\tuseEffect(() => {\n\t\tif (activeRoute) {\n\t\t\tsetRoutes((r) => ({\n\t\t\t\t...r,\n\t\t\t\t[activeRoute.id]: `${trim(history.location.pathname, '/')}${history.location.search}`\n\t\t\t}));\n\t\t}\n\t}, [activeRoute, history.location, primaryBarViews]);\n\tconst primaryBarAccessoryViews = useAppStore((s) => s.views.primaryBarAccessories);\n\tconst accessories = useMemo(\n\t\t() =>\n\t\t\tsortBy(\n\t\t\t\tfilter(primaryBarAccessoryViews, (v) => checkRoute(v, activeRoute)),\n\t\t\t\t'position'\n\t\t\t),\n\t\t[activeRoute, primaryBarAccessoryViews]\n\t);\n\tif (IS_STANDALONE && activeRoute?.standalone?.hidePrimaryBar) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<ContainerWithDivider\n\t\t\twidth={49}\n\t\t\theight=\"fill\"\n\t\t\tbackground=\"gray6\"\n\t\t\torientation=\"vertical\"\n\t\t\tmainAlignment=\"flex-start\"\n\t\t\tcrossAlignment=\"flex-start\"\n\t\t>\n\t\t\t<Row\n\t\t\t\tmainAlignment=\"flex-start\"\n\t\t\t\tcrossAlignment=\"flex-start\"\n\t\t\t\torientation=\"vertical\"\n\t\t\t\ttakeAvailableSpace\n\t\t\t\twrap=\"nowrap\"\n\t\t\t\tstyle={{\n\t\t\t\t\tminHeight: '1px',\n\t\t\t\t\t// TODO: fix overlay usage\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\toverflowY: 'overlay'\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t{map(primaryBarViews, (view) =>\n\t\t\t\t\tview.visible ? (\n\t\t\t\t\t\t<PrimaryBarElement\n\t\t\t\t\t\t\tkey={view.id}\n\t\t\t\t\t\t\tonClick={(): void => history.push(`/${routes[view.id]}`)}\n\t\t\t\t\t\t\tview={view}\n\t\t\t\t\t\t\tactive={activeRoute?.id === view.id}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) : null\n\t\t\t\t)}\n\t\t\t</Row>\n\t\t\t<Row\n\t\t\t\tmainAlignment=\"flex-end\"\n\t\t\t\torientation=\"vertical\"\n\t\t\t\twrap=\"nowrap\"\n\t\t\t\t// TODO: fix overlay usage\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n\t\t\t\t// @ts-ignore\n\t\t\t\tstyle={{ minHeight: '1px', overflowY: 'overlay' }}\n\t\t\t>\n\t\t\t\t{accessories.map((v) => (\n\t\t\t\t\t<PrimaryBarAccessoryElement view={v} key={v.id} />\n\t\t\t\t))}\n\t\t\t\t<ToggleBoardIcon />\n\t\t\t</Row>\n\t\t</ContainerWithDivider>\n\t);\n};\n\nconst MemoShellPrimaryBarComponent = React.memo(ShellPrimaryBarComponent);\n\nconst ShellPrimaryBar: FC = () => {\n\tconst activeRoute = useCurrentRoute() as AppRoute;\n\treturn <MemoShellPrimaryBarComponent activeRoute={activeRoute} />;\n};\n\nexport default ShellPrimaryBar;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useCallback, useMemo } from 'react';\nimport { filter, findIndex, map, sortBy } from 'lodash';\nimport styled from 'styled-components';\nimport { Route, Switch } from 'react-router-dom';\nimport { Container, ContainerProps } from '@zextras/carbonio-design-system';\nimport AppContextProvider from '../boot/app/app-context-provider';\nimport { Collapser } from './collapser';\nimport { useAppStore } from '../store/app';\nimport { AppRoute } from '../../types';\nimport { useUtilityBarStore } from '../utility-bar';\nimport { checkRoute } from '../utility-bar/utils';\nimport { useCurrentRoute } from '../history/hooks';\n\nconst SidebarContainer = styled(Container)<ContainerProps & { sidebarIsOpen?: boolean }>`\n\tmin-width: 48px;\n\tmax-width: 314px;\n\twidth: ${({ sidebarIsOpen }): number => (sidebarIsOpen ? 314 : 48)}px;\n\ttransition: width 300ms;\n\toverflow-x: hidden;\n`;\n\nconst ShellSecondaryBarComponent: FC<{ activeRoute: AppRoute }> = ({ activeRoute }) => {\n\tconst isOpen = useUtilityBarStore((s) => s.secondaryBarState);\n\tconst setIsOpen = useUtilityBarStore((s) => s.setSecondaryBarState);\n\tconst onCollapserClick = useCallback(() => setIsOpen(!isOpen), [isOpen, setIsOpen]);\n\tconst secondaryBarViews = useAppStore((s) => s.views.secondaryBar);\n\tconst secondaryBarAccessoryViews = useAppStore((s) => s.views.secondaryBarAccessories);\n\tconst accessories = useMemo(\n\t\t() =>\n\t\t\tsortBy(\n\t\t\t\tfilter(secondaryBarAccessoryViews, (v) => checkRoute(v, activeRoute)),\n\t\t\t\t'position'\n\t\t\t),\n\t\t[activeRoute, secondaryBarAccessoryViews]\n\t);\n\tconst disabled = useMemo(\n\t\t() => findIndex(secondaryBarViews, (view) => view.id === activeRoute?.id) < 0,\n\t\t[activeRoute?.id, secondaryBarViews]\n\t);\n\treturn disabled ? null : (\n\t\t<>\n\t\t\t<SidebarContainer\n\t\t\t\tsidebarIsOpen={isOpen}\n\t\t\t\trole=\"menu\"\n\t\t\t\theight=\"fill\"\n\t\t\t\torientation=\"vertical\"\n\t\t\t\tmainAlignment=\"space-between\"\n\t\t\t\tonClick={isOpen ? undefined : onCollapserClick}\n\t\t\t\tstyle={{\n\t\t\t\t\tmaxHeight: 'calc(100vh - 48px)',\n\t\t\t\t\toverflowY: 'auto'\n\t\t\t\t}}\n\t\t\t>\n\t\t\t\t<Container mainAlignment=\"flex-start\">\n\t\t\t\t\t<Switch>\n\t\t\t\t\t\t{map(secondaryBarViews, (view) => (\n\t\t\t\t\t\t\t<Route key={view.id} path={`/${view.route}`}>\n\t\t\t\t\t\t\t\t<AppContextProvider pkg={view.app}>\n\t\t\t\t\t\t\t\t\t<view.component expanded={isOpen} />\n\t\t\t\t\t\t\t\t</AppContextProvider>\n\t\t\t\t\t\t\t</Route>\n\t\t\t\t\t\t))}\n\t\t\t\t\t</Switch>\n\t\t\t\t</Container>\n\t\t\t\t<Container mainAlignment=\"flex-end\" height=\"fit\">\n\t\t\t\t\t{accessories.map((view) => (\n\t\t\t\t\t\t<AppContextProvider key={view.id} pkg={view.app}>\n\t\t\t\t\t\t\t<view.component expanded={isOpen} />\n\t\t\t\t\t\t</AppContextProvider>\n\t\t\t\t\t))}\n\t\t\t\t</Container>\n\t\t\t</SidebarContainer>\n\t\t\t<Collapser onClick={onCollapserClick} open={isOpen} />\n\t\t</>\n\t);\n};\n\nconst MemoShellSecondaryBar = React.memo(ShellSecondaryBarComponent);\n\nconst ShellSecondaryBar: FC = () => {\n\tconst activeRoute = useCurrentRoute() as AppRoute;\n\treturn <MemoShellSecondaryBar activeRoute={activeRoute} />;\n};\n\nexport default ShellSecondaryBar;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useEffect, useState, useContext, FC, useMemo } from 'react';\nimport { Row, Responsive } from '@zextras/carbonio-design-system';\nimport styled from 'styled-components';\nimport { find } from 'lodash';\nimport { PreviewManager } from '@zextras/carbonio-ui-preview';\nimport AppViewContainer from './app-view-container';\nimport ShellContextProvider from './shell-context-provider';\nimport ShellHeader from './shell-header';\nimport ShellNavigationBar from './shell-navigation-bar';\nimport { BoardContainer } from './boards/board-container';\nimport { ThemeCallbacksContext } from '../boot/theme-provider';\nimport { useAccountStore, useUserSettings } from '../store/account';\nimport { ShellUtilityBar, ShellUtilityPanel } from '../utility-bar';\nimport { useCurrentRoute } from '../history/hooks';\nimport { IS_STANDALONE, SHELL_APP_ID } from '../constants';\nimport { goToLogin } from '../network/go-to-login';\nimport { AppRoute, DRPropValues } from '../../types';\n\nconst Background = styled.div`\n\tbackground: ${({ theme }): string => theme.palette.gray6.regular};\n\tdisplay: flex;\n\tflex-direction: column;\n\theight: 100%;\n\tmin-height: 100%;\n\tmax-height: 100%;\n\twidth: 100%;\n\tmin-width: 100%;\n\tmax-width: 100%;\n`;\n\nfunction DarkReaderListener(): null {\n\tconst { setDarkReaderState } = useContext(ThemeCallbacksContext);\n\tconst settings = useUserSettings();\n\tconst currentDRMSetting = useMemo(\n\t\t() =>\n\t\t\tfind(settings?.props ?? [], {\n\t\t\t\tname: 'zappDarkreaderMode',\n\t\t\t\tzimlet: SHELL_APP_ID\n\t\t\t})?._content as DRPropValues,\n\t\t[settings]\n\t);\n\n\tuseEffect(() => {\n\t\tsetDarkReaderState(currentDRMSetting);\n\t}, [currentDRMSetting, setDarkReaderState]);\n\treturn null;\n}\n\nconst useLoginRedirection = (allowUnauthenticated?: string): void => {\n\tconst auth = useAccountStore((s) => s.authenticated);\n\tuseEffect(() => {\n\t\tif (IS_STANDALONE && !auth && !allowUnauthenticated) {\n\t\t\tgoToLogin();\n\t\t}\n\t}, [allowUnauthenticated, auth]);\n};\n\nconst ShellComponent: FC<{ allowUnauthenticated?: string; hideShellHeader?: string }> = ({\n\tallowUnauthenticated,\n\thideShellHeader\n}) => {\n\tconst [mobileNavOpen, setMobileNavOpen] = useState(false);\n\tuseLoginRedirection(allowUnauthenticated);\n\treturn (\n\t\t<Background>\n\t\t\t<DarkReaderListener />\n\t\t\t{/* <MainAppRerouter /> */}\n\t\t\t{!(IS_STANDALONE && hideShellHeader) && (\n\t\t\t\t<ShellHeader\n\t\t\t\t\tmobileNavIsOpen={mobileNavOpen}\n\t\t\t\t\tonMobileMenuClick={(): void => setMobileNavOpen(!mobileNavOpen)}\n\t\t\t\t>\n\t\t\t\t\t<ShellUtilityBar />\n\t\t\t\t</ShellHeader>\n\t\t\t)}\n\t\t\t<Row crossAlignment=\"unset\" style={{ position: 'relative', flexGrow: '1' }}>\n\t\t\t\t<ShellNavigationBar mobileNavIsOpen={mobileNavOpen} />\n\t\t\t\t<AppViewContainer />\n\t\t\t\t<ShellUtilityPanel />\n\t\t\t</Row>\n\t\t\t<Responsive mode=\"desktop\">\n\t\t\t\t<BoardContainer />\n\t\t\t</Responsive>\n\t\t</Background>\n\t);\n};\n\nconst MemoShell = React.memo(ShellComponent);\n\nconst ShellView: FC = () => {\n\tconst activeRoute = useCurrentRoute() as AppRoute;\n\tconst allowUnauthenticated = activeRoute?.standalone?.allowUnauthenticated as string | undefined;\n\tconst hideShellHeader = activeRoute?.standalone?.hideShellHeader as string | undefined;\n\treturn (\n\t\t<ShellContextProvider>\n\t\t\t<PreviewManager>\n\t\t\t\t<MemoShell allowUnauthenticated={allowUnauthenticated} hideShellHeader={hideShellHeader} />\n\t\t\t</PreviewManager>\n\t\t</ShellContextProvider>\n\t);\n};\n\nexport default ShellView;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { find, get, join } from 'lodash';\nimport { useMemo } from 'react';\nimport {\n\tAccount,\n\tAccountRightName,\n\tAccountRights,\n\tAccountRightTarget,\n\tAccountSettings\n} from '../../../types';\nimport { useAccountStore } from './store';\n\nexport const useUserAccount = (): Account => useAccountStore((s) => s.account as Account);\nexport const useUserAccounts = (): Array<Account> => {\n\tconst acct = useAccountStore((s) => s.account);\n\treturn useMemo(() => (acct ? [acct as Account] : []), [acct]);\n};\n\nexport const useUserRights = (): AccountRights =>\n\tuseAccountStore((s) => s.account?.rights ?? { targets: [] });\n\nexport const useUserRight = (right: AccountRightName): Array<AccountRightTarget> => {\n\tconst { targets } = useUserRights();\n\treturn useMemo(\n\t\t() => find(targets, ['right', right])?.target ?? ([] as Array<AccountRightTarget>),\n\t\t[right, targets]\n\t);\n};\nexport const useUserSettings = (): AccountSettings => useAccountStore((s) => s.settings);\nexport const useUserSetting = <T = void>(...path: Array<string>): string | T =>\n\tuseAccountStore((s) => get(s.settings, join(path, '.')));\n\nexport const getUserAccount = (): Account => useAccountStore.getState().account as Account;\nexport const getUserAccounts = (): Array<Account> => [\n\tuseAccountStore.getState().account as Account\n];\nexport const getUserSettings = (): AccountSettings => useAccountStore.getState().settings;\nexport const getUserSetting = <T = void>(...path: Array<string>): string | T =>\n\tget(useAccountStore.getState().settings, join(path, '.'));\n\nexport const getUserRights = (): AccountRights =>\n\tuseAccountStore.getState().account?.rights ?? { targets: [] };\n\nexport const getUserRight = (right: AccountRightName): Array<AccountRightTarget> =>\n\tfind(getUserRights().targets, ['right', right])?.target ?? ([] as Array<AccountRightTarget>);\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nexport * from './hooks';\nexport * from './store';\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { GetInfoResponse, Account, AccountSettings } from '../../../types';\n\nconst normalizeSettings = (\n\tsettings: Pick<GetInfoResponse, 'attrs' | 'prefs' | 'props'>\n): AccountSettings => ({\n\tattrs: settings.attrs._attrs,\n\tprefs: settings.prefs._attrs,\n\tprops: settings.props.prop ?? []\n});\n\nexport const normalizeAccount = ({\n\tid,\n\tname,\n\tattrs,\n\tprefs,\n\tidentities,\n\tsignatures,\n\tprops,\n\tversion,\n\trights\n}: GetInfoResponse): {\n\taccount: Account;\n\tsettings: AccountSettings;\n\tversion: string;\n} => {\n\tconst settings = normalizeSettings({ attrs, prefs, props });\n\treturn {\n\t\taccount: {\n\t\t\tid,\n\t\t\tname,\n\t\t\tdisplayName: attrs._attrs.displayName,\n\t\t\tidentities,\n\t\t\tsignatures,\n\t\t\trights\n\t\t},\n\t\tsettings,\n\t\tversion\n\t};\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport create from 'zustand';\nimport { AccountState } from '../../../types';\n\nexport const useAccountStore = create<AccountState>(() => ({\n\tauthenticated: false,\n\taccount: undefined,\n\tversion: '',\n\tsettings: {\n\t\tprefs: {},\n\t\tattrs: {},\n\t\tprops: []\n\t},\n\tusedQuota: 0,\n\tlastNotificationTime: Date.now()\n}));\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable react-hooks/rules-of-hooks */\n/* THIS FILE CONTAINS HOOKS, BUT ESLINT IS DUMB */\n\nimport { sortBy } from 'lodash';\nimport { useMemo } from 'react';\nimport { useAppStore } from './store';\nimport { AppRoute, CarbonioModule } from '../../../types';\n\nexport const useApp = (appId: string) => (): CarbonioModule => useAppStore((s) => s.apps[appId]);\nexport const useApps = (): Record<string, CarbonioModule> => useAppStore((s) => s.apps);\nexport const useAppList = (): Array<CarbonioModule> => {\n\tconst apps = useApps();\n\treturn useMemo(() => sortBy(apps, (a) => a.priority), [apps]);\n};\nexport const getAppList = (): Array<CarbonioModule> =>\n\tsortBy(useAppStore.getState().apps, (a) => a.priority);\n\nexport const getApp = (appId: string) => (): CarbonioModule => useAppStore.getState().apps[appId];\nexport const getApps = (): Record<string, CarbonioModule> => useAppStore.getState().apps;\n\nexport const useAppContext = (appId: string) => (): unknown =>\n\tuseAppStore((s) => s.appContexts[appId]);\nexport const getAppContext = (appId: string) => (): unknown =>\n\tuseAppStore.getState().appContexts[appId];\nexport const getShell = (): CarbonioModule => useAppStore.getState().shell;\nexport const getRoutes = (): Record<string, AppRoute> => useAppStore.getState().routes;\nexport const useRoutes = (): Record<string, AppRoute> => useAppStore((s) => s.routes);\nexport const getRoute = (id: string): AppRoute => useAppStore.getState().routes[id];\nexport const useRoute = (id: string): AppRoute => useAppStore((s) => s.routes[id]);\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nexport * from './hooks';\nexport * from './store';\nexport * from './utils';\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport produce from 'immer';\nimport { filter, find, findIndex, merge, omit, reduce, sortBy, unionBy, unionWith } from 'lodash';\nimport create from 'zustand';\nimport {\n\tAppRouteDescriptor,\n\tAppState,\n\tAppView,\n\tBadgeInfo,\n\tBoardView,\n\tCarbonioModule,\n\tPrimaryAccessoryView,\n\tPrimaryBarView,\n\tSearchView,\n\tSecondaryAccessoryView,\n\tSecondaryBarView,\n\tSettingsView,\n\tUtilityView\n} from '../../../types';\nimport { SHELL_APP_ID } from '../../constants';\nimport { normalizeApp } from './utils';\n\nconst filterById = <T extends { id: string }>(items: Array<T>, id: string): Array<T> =>\n\tfilter(items, (item) => item.id !== id);\n\nconst STANDALONE_RESPONSE = 'standalone';\nexport const useAppStore = create<AppState>((set, get) => ({\n\tstandalone: false,\n\tapps: {},\n\tappContexts: {},\n\tshell: {\n\t\tcommit: '',\n\t\tdescription: '',\n\t\tjs_entrypoint: '',\n\t\tname: 'carbonio-shell-ui',\n\t\tpriority: -1,\n\t\tversion: '',\n\t\ttype: 'shell',\n\t\tattrKey: '',\n\t\ticon: '',\n\t\tdisplay: 'Shell'\n\t},\n\tentryPoints: {},\n\troutes: {},\n\tviews: {\n\t\tprimaryBar: [],\n\t\tsecondaryBar: [],\n\t\tappView: [],\n\t\tboard: [],\n\t\tutilityBar: [],\n\t\tsettings: [],\n\t\tsearch: [],\n\t\tprimaryBarAccessories: [],\n\t\tsecondaryBarAccessories: []\n\t},\n\tsetters: {\n\t\taddApps: (apps: Array<Partial<CarbonioModule>>): void => {\n\t\t\tset((state) => ({\n\t\t\t\tapps: reduce(\n\t\t\t\t\tapps,\n\t\t\t\t\t(acc, app) =>\n\t\t\t\t\t\tapp.name && app.name !== SHELL_APP_ID\n\t\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t\t...acc,\n\t\t\t\t\t\t\t\t\t[app.name]: normalizeApp(app)\n\t\t\t\t\t\t\t }\n\t\t\t\t\t\t\t: acc,\n\t\t\t\t\t{}\n\t\t\t\t),\n\t\t\t\tshell: {\n\t\t\t\t\t...state.shell,\n\t\t\t\t\t...(find(apps, (app) => app.name === SHELL_APP_ID) ?? {})\n\t\t\t\t},\n\t\t\t\tappContexts: reduce(apps, (acc, val) => (val.name ? { ...acc, [val.name]: {} } : acc), {})\n\t\t\t}));\n\t\t},\n\t\tsetAppContext:\n\t\t\t(app: string) =>\n\t\t\t(context: unknown): void => {\n\t\t\t\tset(\n\t\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\t\tstate.appContexts[app] = merge(state.appContexts[app], context);\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t},\n\t\t// add route (id route primaryBar secondaryBar app)\n\t\taddRoute: (routeData: AppRouteDescriptor): string => {\n\t\t\tconst { standalone } = get();\n\t\t\tif (standalone && routeData.route !== standalone) {\n\t\t\t\treturn STANDALONE_RESPONSE;\n\t\t\t}\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.routes[routeData.id] = routeData;\n\t\t\t\t\tif (routeData.primaryBar) {\n\t\t\t\t\t\tstate.views.primaryBar = sortBy(\n\t\t\t\t\t\t\tunionWith<PrimaryBarView>(\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tapp: routeData.app,\n\t\t\t\t\t\t\t\t\t\tid: routeData.id,\n\t\t\t\t\t\t\t\t\t\troute: routeData.route,\n\t\t\t\t\t\t\t\t\t\tcomponent: routeData.primaryBar,\n\t\t\t\t\t\t\t\t\t\tbadge: routeData.badge,\n\t\t\t\t\t\t\t\t\t\tposition: routeData.position,\n\t\t\t\t\t\t\t\t\t\tvisible: routeData.visible,\n\t\t\t\t\t\t\t\t\t\tlabel: routeData.label\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\tstate.views.primaryBar,\n\t\t\t\t\t\t\t\t(a, b): boolean => a.id === b.id\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t'position'\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tif (routeData.secondaryBar) {\n\t\t\t\t\t\tstate.views.secondaryBar = unionWith<SecondaryBarView>(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tapp: routeData.app,\n\t\t\t\t\t\t\t\t\tid: routeData.id,\n\t\t\t\t\t\t\t\t\troute: routeData.route,\n\t\t\t\t\t\t\t\t\tcomponent: routeData.secondaryBar\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tstate.views.secondaryBar,\n\t\t\t\t\t\t\t(a, b): boolean => a.id === b.id\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tif (routeData.appView) {\n\t\t\t\t\t\tstate.views.appView = unionWith<AppView>(\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tapp: routeData.app,\n\t\t\t\t\t\t\t\t\tid: routeData.id,\n\t\t\t\t\t\t\t\t\troute: routeData.route,\n\t\t\t\t\t\t\t\t\tcomponent: routeData.appView\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tstate.views.appView,\n\t\t\t\t\t\t\t(a, b): boolean => a.id === b.id\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t);\n\t\t\treturn routeData.id;\n\t\t},\n\t\tsetRouteVisibility: (id: string, visible: boolean): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tconst idx = findIndex(state.views.primaryBar, (view) => view.id === id);\n\t\t\t\t\tif (idx >= 0) {\n\t\t\t\t\t\tstate.views.primaryBar[idx].visible = visible;\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\n\t\t// remove route (id | route)\n\t\tremoveRoute: (id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.routes = omit(state.routes, [id]);\n\t\t\t\t\tstate.views.primaryBar = filterById(state.views.primaryBar, id);\n\t\t\t\t\tstate.views.secondaryBar = filterById(state.views.secondaryBar, id);\n\t\t\t\t\tstate.views.appView = filterById(state.views.appView, id);\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\t\t// add board\n\t\taddBoardView: (data: BoardView): string => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.board = unionBy([data], state.views.board, 'id');\n\t\t\t\t})\n\t\t\t);\n\t\t\treturn data.id;\n\t\t},\n\n\t\t// remove board\n\t\tremoveBoardView: (id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.board = filterById(state.views.board, id);\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\n\t\t// add settings\n\t\taddSettingsView: (data: SettingsView): string => {\n\t\t\tconst { standalone } = get();\n\t\t\tif (standalone && data.route !== standalone) {\n\t\t\t\treturn STANDALONE_RESPONSE;\n\t\t\t}\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.settings = sortBy(unionBy([data], state.views.settings, 'id'), 'position');\n\t\t\t\t})\n\t\t\t);\n\t\t\treturn data.id;\n\t\t},\n\n\t\t// remove settings\n\t\tremoveSettingsView: (id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.settings = filterById(state.views.settings, id);\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\t\t//\n\t\t// add search\n\t\taddSearchView: (data: SearchView): string => {\n\t\t\tconst { standalone } = get();\n\t\t\tif (standalone && data.route !== standalone) {\n\t\t\t\treturn STANDALONE_RESPONSE;\n\t\t\t}\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.search = sortBy(unionBy([data], state.views.search, 'id'), 'position');\n\t\t\t\t})\n\t\t\t);\n\t\t\treturn data.id;\n\t\t},\n\t\t// remove search\n\t\tremoveSearchView: (id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.search = filterById(state.views.search, id);\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\t\t//\n\t\t// add utility\n\t\taddUtilityView: (data: UtilityView): string => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.utilityBar = sortBy(\n\t\t\t\t\t\tunionBy([data], state.views.utilityBar, 'id'),\n\t\t\t\t\t\t'position'\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t);\n\t\t\treturn data.id;\n\t\t},\n\t\t// remove utility\n\t\tremoveUtilityView: (id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.utilityBar = filterById(state.views.utilityBar, id);\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\t\t//\n\t\t// add primaryAccessory\n\t\taddPrimaryAccessoryView: (data: PrimaryAccessoryView): string => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.primaryBarAccessories = unionBy(\n\t\t\t\t\t\t[data],\n\t\t\t\t\t\tstate.views.primaryBarAccessories,\n\t\t\t\t\t\t'id'\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t);\n\t\t\treturn data.id;\n\t\t},\n\t\t// remove primaryAccessory\n\t\tremovePrimaryAccessoryView: (id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.primaryBarAccessories = filterById(state.views.primaryBarAccessories, id);\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\t\t//\n\t\t// add secondaryAccessory\n\t\taddSecondaryAccessoryView: (data: SecondaryAccessoryView): string => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.secondaryBarAccessories = unionBy(\n\t\t\t\t\t\t[data],\n\t\t\t\t\t\tstate.views.secondaryBarAccessories,\n\t\t\t\t\t\t'id'\n\t\t\t\t\t);\n\t\t\t\t})\n\t\t\t);\n\t\t\treturn data.id;\n\t\t},\n\t\t// remove secondaryAccessory\n\t\tremoveSecondaryAccessoryView: (id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tstate.views.secondaryBarAccessories = filterById(state.views.secondaryBarAccessories, id);\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\t\tupdatePrimaryBadge: (badge: Partial<BadgeInfo>, id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tconst idx = findIndex(state.views.primaryBar, (bar) => bar.id === id);\n\t\t\t\t\tif (idx >= 0) {\n\t\t\t\t\t\tstate.views.primaryBar[idx].badge = {\n\t\t\t\t\t\t\t...state.views.primaryBar[idx].badge,\n\t\t\t\t\t\t\t...badge\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t);\n\t\t},\n\t\tupdateUtilityBadge: (badge: Partial<BadgeInfo>, id: string): void => {\n\t\t\tset(\n\t\t\t\tproduce((state: AppState) => {\n\t\t\t\t\tconst idx = findIndex(state.views.utilityBar, (bar) => bar.id === id);\n\t\t\t\t\tif (idx >= 0) {\n\t\t\t\t\t\tstate.views.utilityBar[idx].badge = {\n\t\t\t\t\t\t\t...state.views.utilityBar[idx].badge,\n\t\t\t\t\t\t\t...badge\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t);\n\t\t}\n\t}\n}));\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { trim } from 'lodash';\nimport React, { FC } from 'react';\nimport {\n\tAppRouteDescriptor,\n\tBadgeInfo,\n\tBoardView,\n\tCarbonioModule,\n\tPrimaryAccessoryView,\n\tSearchView,\n\tSecondaryAccessoryView,\n\tSettingsView,\n\tUtilityView\n} from '../../../types';\n\nexport const normalizeApp = (app: Partial<CarbonioModule>): CarbonioModule => ({\n\tcommit: app.commit ?? '',\n\tdescription: app.description ?? 'A carbonio Module',\n\t// eslint-disable-next-line camelcase\n\tjs_entrypoint: app.js_entrypoint ?? '',\n\tname: app.name ?? 'module',\n\tpriority: app.priority ?? 99,\n\tversion: app.version ?? '',\n\ttype: app.type ?? 'carbonio',\n\tattrKey: app.attrKey,\n\ticon: app.icon ?? 'Cube',\n\tdisplay: app.display ?? 'Module',\n\tsentryDsn: app.sentryDsn\n});\n\nconst FallbackView: FC = () => <p>Missing Component</p>;\n\nexport const normalizeBadgeInfo = (badge: Partial<BadgeInfo>): BadgeInfo => ({\n\tshow: badge.show ?? false,\n\tcount: badge.count ?? 0,\n\tshowCount: badge.showCount ?? false,\n\tcolor: badge.color ?? 'primary'\n});\n\nexport const normalizeRoute = (\n\tdata: Partial<AppRouteDescriptor>,\n\tapp: CarbonioModule\n): AppRouteDescriptor => {\n\tconst route = trim(data.route ?? app.name, '/');\n\treturn {\n\t\tapp: app.name,\n\t\troute,\n\t\tid: data.id ?? route,\n\t\tbadge: normalizeBadgeInfo(data?.badge ?? {}),\n\t\tposition: data?.position ?? app.priority,\n\t\tvisible: data?.visible ?? true,\n\t\tlabel: data?.label ?? '',\n\t\tprimaryBar: data.primaryBar ?? app.icon ?? 'CubeOutline',\n\t\tsecondaryBar: data.secondaryBar,\n\t\tappView: data.appView ?? FallbackView,\n\t\tstandalone: {\n\t\t\thidePrimaryBar: data?.standalone?.hidePrimaryBar,\n\t\t\thideShellHeader: data?.standalone?.hideShellHeader,\n\t\t\tallowUnauthenticated: data?.standalone?.allowUnauthenticated\n\t\t}\n\t};\n};\n\nexport const normalizeSettingsView = (\n\tdata: Partial<SettingsView>,\n\tapp: CarbonioModule\n): SettingsView => {\n\tconst route = trim(data.route ?? app.name, '/');\n\treturn {\n\t\tapp: app.name,\n\t\troute,\n\t\tid: data?.id ?? route,\n\t\tcomponent: data?.component ?? FallbackView,\n\t\tlabel: data.label ?? app.display,\n\t\ticon: data.icon ?? app.icon,\n\t\tposition: data.position ?? app.priority ?? 99,\n\t\tsubSections: data.subSections ?? []\n\t};\n};\nexport const normalizeSearchView = (data: Partial<SearchView>, app: CarbonioModule): SearchView => {\n\tconst route = trim(data.route ?? app.name, '/');\n\treturn {\n\t\tapp: app.name,\n\t\troute,\n\t\tid: data?.id ?? route,\n\t\tcomponent: data?.component ?? FallbackView,\n\t\tlabel: data.label ?? app.display,\n\t\ticon: data.icon ?? app.icon,\n\t\tposition: data.position ?? app.priority ?? 99\n\t};\n};\nexport const normalizeUtilityView = (\n\tdata: Partial<UtilityView>,\n\tapp: CarbonioModule\n): UtilityView => ({\n\tapp: app.name,\n\tid: data?.id ?? app.name,\n\twhitelistRoutes: data?.whitelistRoutes,\n\tblacklistRoutes: data?.blacklistRoutes,\n\tcomponent: data?.component ?? FallbackView,\n\tbutton: data?.button ?? 'Cube',\n\tbadge: normalizeBadgeInfo(data?.badge ?? {}),\n\tposition: data?.position ?? app.priority,\n\tlabel: data?.label ?? app.display\n});\nexport const normalizePrimaryAccessoryView = (\n\tdata: Partial<PrimaryAccessoryView>,\n\tapp: CarbonioModule\n): PrimaryAccessoryView => ({\n\tapp: app.name,\n\tonClick: data?.onClick,\n\tlabel: data?.label ?? app.display,\n\tposition: data?.position ?? app.priority,\n\twhitelistRoutes: data?.whitelistRoutes,\n\tblacklistRoutes: data?.blacklistRoutes,\n\tid: data?.id ?? app.name,\n\tcomponent: data?.component ?? FallbackView\n});\nexport const normalizeSecondaryAccessoryView = (\n\tdata: Partial<SecondaryAccessoryView>,\n\tapp: CarbonioModule\n): SecondaryAccessoryView => ({\n\tapp: app.name,\n\tposition: data?.position ?? app.priority,\n\twhitelistRoutes: data?.whitelistRoutes,\n\tblacklistRoutes: data?.blacklistRoutes,\n\tid: data?.id ?? app.name,\n\tcomponent: data?.component ?? FallbackView\n});\n\nexport const normalizeBoardView = (data: Partial<BoardView>, app: CarbonioModule): BoardView => {\n\tconst route = trim(data.route ?? app.name, '/');\n\treturn {\n\t\tapp: app.name,\n\t\troute,\n\t\tid: data?.id ?? route,\n\t\tcomponent: data?.component ?? FallbackView\n\t};\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC, useContext, useMemo, createContext } from 'react';\nimport { Board, BoardHooksContext } from '../../../types';\nimport { closeBoard, setCurrentBoard, updateBoard, useBoardStore } from './store';\n\nexport const useBoardById = <T,>(id: string): Board<T> => useBoardStore((s) => s.boards[id]);\nexport const getBoardById = <T,>(id: string): Board<T> => useBoardStore.getState().boards[id];\nexport const useBoardContextById = <T,>(id: string): T =>\n\tuseBoardStore((s) => s.boards[id].context);\nexport const getBoardContextById = <T,>(id: string): T =>\n\tuseBoardStore.getState().boards[id].context;\n\n// Must be empty if no board is available\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nexport const boardContext = createContext<Board>();\n// Must be empty if no board is available\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nexport const boardHooksContext = createContext<BoardHooksContext>();\n\nexport const BoardProvider: FC<{ id: string }> = ({ children, id }) => {\n\tconst board = useBoardById(id);\n\tconst callbacks = useMemo<BoardHooksContext>(\n\t\t() => ({\n\t\t\tgetBoardContext: () => getBoardContextById(id),\n\t\t\tgetBoard: () => getBoardById(id),\n\t\t\tcloseBoard: () => closeBoard(id),\n\t\t\tupdateBoard: (b) => updateBoard(id, b),\n\t\t\tsetCurrentBoard: () => setCurrentBoard(id)\n\t\t}),\n\t\t[id]\n\t);\n\treturn (\n\t\t<boardHooksContext.Provider value={callbacks}>\n\t\t\t<boardContext.Provider value={board}>{children}</boardContext.Provider>\n\t\t</boardHooksContext.Provider>\n\t);\n};\n\nexport const useBoardHooks = (): BoardHooksContext => useContext(boardHooksContext);\nexport const useBoard = (): Board => useContext(boardContext);\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nexport * from './hooks';\nexport * from './store';\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport produce from 'immer';\nimport { forEach, trimStart, uniqueId } from 'lodash';\nimport create from 'zustand';\nimport { BoardState, Board } from '../../../types';\nimport { getApp } from '../app';\n\nexport const useBoardStore = create<BoardState>(() => ({\n\tboards: {},\n\texpanded: false,\n\tminimized: false\n}));\n\nexport const addBoard =\n\t(app: string) =>\n\t<T = any>(\n\t\tboard: Omit<Board<T>, 'app' | 'icon' | 'id'> & { id?: string; icon?: string },\n\t\texpanded?: BoardState['expanded']\n\t): Board => {\n\t\tconst id = board.id ?? uniqueId('board-');\n\t\tuseBoardStore.setState(\n\t\t\tproduce((s: BoardState) => {\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ts.boards[id] = {\n\t\t\t\t\t...board,\n\t\t\t\t\tapp,\n\t\t\t\t\tid,\n\t\t\t\t\ticon: board.icon ?? getApp(app)()?.icon ?? 'CubeOutline',\n\t\t\t\t\turl: trimStart(board.url, '/')\n\t\t\t\t};\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ts.current = id;\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ts.minimized = false;\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ts.expanded = expanded ?? s.expanded;\n\t\t\t})\n\t\t);\n\t\treturn useBoardStore.getState().boards[id];\n\t};\nexport const closeBoard = (id: string): void => {\n\tuseBoardStore.setState(\n\t\tproduce((s: BoardState) => {\n\t\t\ts.boards[id]?.onClose?.(s.boards[id]);\n\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\tdelete s.boards[id];\n\t\t})\n\t);\n};\nexport const closeAllBoards = (): void => {\n\tuseBoardStore.setState(\n\t\tproduce((s: BoardState) => {\n\t\t\tforEach(s.boards, (b) => {\n\t\t\t\tb?.onClose?.(b);\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\tdelete s.boards[b.id];\n\t\t\t});\n\t\t})\n\t);\n};\nexport const onGoToPanel = (): void => {\n\tuseBoardStore.setState(\n\t\tproduce((s: BoardState) => {\n\t\t\tconst id = s.current;\n\t\t\tif (id) {\n\t\t\t\ts.boards[id]?.onGoToPanel?.(s.boards[id]);\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\tdelete s.boards[id];\n\t\t\t}\n\t\t})\n\t);\n};\nexport const minimizeBoards = (): void => {\n\tuseBoardStore.setState({\n\t\tminimized: true\n\t});\n};\nexport const reopenBoards = (): void => {\n\tuseBoardStore.setState({\n\t\tminimized: false\n\t});\n};\nexport const expandBoards = (): void => {\n\tuseBoardStore.setState({\n\t\texpanded: true\n\t});\n};\nexport const reduceBoards = (): void => {\n\tuseBoardStore.setState({\n\t\texpanded: false\n\t});\n};\nexport const setCurrentBoard = (id: string): void => {\n\tuseBoardStore.setState({\n\t\tcurrent: id\n\t});\n};\nexport const updateBoard = <T = any>(id: string, board: Partial<Board<T>>): void => {\n\tuseBoardStore.setState(\n\t\tproduce((s: BoardState) => {\n\t\t\tif (s.boards[id])\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ts.boards[id] = {\n\t\t\t\t\t...s.boards[id],\n\t\t\t\t\t...board\n\t\t\t\t};\n\t\t})\n\t);\n};\nexport const updateBoardContext = <T = any>(id: string, context: T): void => {\n\tuseBoardStore.setState(\n\t\tproduce((s: BoardState) => {\n\t\t\tif (s.boards[id])\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\ts.boards[id].context = context;\n\t\t})\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable @typescript-eslint/ban-types */\nimport create from 'zustand';\nimport { reduce } from 'lodash';\nimport { useEffect } from 'react';\nimport { ContextBridgeState } from '../../types';\n\nexport const useContextBridge = create<ContextBridgeState>((set) => ({\n\tpackageDependentFunctions: {},\n\tfunctions: {},\n\tadd: ({ packageDependentFunctions, functions }): void => {\n\t\tset((s) => ({\n\t\t\tpackageDependentFunctions: reduce(\n\t\t\t\tpackageDependentFunctions ?? {},\n\t\t\t\t(acc, f, key) => {\n\t\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\t\tacc[key] = f;\n\t\t\t\t\treturn acc;\n\t\t\t\t},\n\t\t\t\ts.packageDependentFunctions\n\t\t\t),\n\t\t\tfunctions: reduce(\n\t\t\t\tfunctions ?? {},\n\t\t\t\t(acc, f, key) => {\n\t\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\t\tacc[key] = f;\n\t\t\t\t\treturn acc;\n\t\t\t\t},\n\t\t\t\ts.functions\n\t\t\t)\n\t\t}));\n\t}\n}));\n\nexport const useBridge = (content: Partial<Omit<ContextBridgeState, 'add'>>): void => {\n\tconst addFunctions = useContextBridge(({ add }) => add);\n\tuseEffect(() => {\n\t\taddFunctions(content);\n\t}, [content, addFunctions]);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { ComponentType, useMemo } from 'react';\nimport {\n\tFolders,\n\tSearches,\n\tSearchFolder,\n\tFolder,\n\tAccordionFolder,\n\tFolderView\n} from '../../../types';\nimport { FOLDER_VIEW } from '../../constants';\nimport { useFolderStore } from './store';\nimport { filterNodes, folderViewFilter, isRoot, mapNodes, sortFolders } from './utils';\n\n// FOLDERS\nexport const useFolder = (id: string): Folder | undefined => useFolderStore((s) => s.folders?.[id]);\nexport const getFolder = (id: string): Folder | undefined =>\n\tuseFolderStore.getState()?.folders?.[id];\nexport const useFolders = (): Folders => useFolderStore((s) => s.folders);\nexport const getFolders = (): Folders => useFolderStore.getState().folders;\n\n// ROOTS\nexport const useRoot = (id: string): Folder | undefined => useFolderStore((s) => s.roots?.[id]);\nexport const getRoot = (id: string): Folder | undefined => useFolderStore.getState().roots?.[id];\nexport const useRoots = (): Folders => useFolderStore((s) => s.roots);\nexport const getRoots = (): Folders => useFolderStore.getState().roots;\n\n// ROOTS BY VIEW\nexport const useRootByUser = (userId: string): Folder | SearchFolder | Record<string, never> =>\n\tuseFolderStore((s) => (s.roots ? s.roots[userId] : {}));\nexport const getRootByUser = (userId: string): Folder | SearchFolder | Record<string, never> => {\n\tconst folders = useFolderStore.getState();\n\treturn folders.roots ? folders.roots[userId] : {};\n};\n\n// SEARCHES\n\nexport const useSearchFolder = (id: string): SearchFolder | undefined =>\n\tuseFolderStore((s) => s.searches?.[id]);\nexport const getSearchFolder = (id: string): SearchFolder | undefined =>\n\tuseFolderStore.getState().searches[id];\nexport const useSearchFolders = (): Searches => useFolderStore((s) => s.searches);\nexport const getSearchFolders = (): Searches => useFolderStore.getState().searches;\n\n// Accordion-ize\n\nexport const useFoldersByView = (view: FolderView): Array<Folder> => {\n\tconst roots = useRoots();\n\tconst sortFunction = useMemo(\n\t\t() => (view === FOLDER_VIEW.message ? sortFolders : undefined),\n\t\t[view]\n\t);\n\treturn useMemo(\n\t\t() =>\n\t\t\troots ? filterNodes<Folder>(Object.values(roots), folderViewFilter(view), sortFunction) : [],\n\t\t[roots, sortFunction, view]\n\t);\n};\n\nexport const useFoldersAccordionByView = (\n\tview: FolderView,\n\tCustomComponent: ComponentType<{ folder: Folder }>,\n\titemProps?: (item: AccordionFolder) => Record<string, any>\n): Array<AccordionFolder> => {\n\tconst roots = useRoots();\n\treturn useMemo(\n\t\t() =>\n\t\t\troots\n\t\t\t\t? mapNodes<Folder, AccordionFolder>(Object.values(roots), {\n\t\t\t\t\t\tmapFunction: (f) => {\n\t\t\t\t\t\t\tconst item = {\n\t\t\t\t\t\t\t\tid: f.id,\n\t\t\t\t\t\t\t\tlabel: f.name,\n\t\t\t\t\t\t\t\tCustomComponent,\n\t\t\t\t\t\t\t\titems: [],\n\t\t\t\t\t\t\t\tfolder: f,\n\t\t\t\t\t\t\t\tdisableHover: isRoot(f)\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst props = itemProps?.(item) ?? {};\n\t\t\t\t\t\t\treturn { ...item, ...props };\n\t\t\t\t\t\t},\n\t\t\t\t\t\tfilterFunction: folderViewFilter(view),\n\t\t\t\t\t\trecursionKey: 'items',\n\t\t\t\t\t\tsortFunction: sortFolders,\n\t\t\t\t\t\tdeep: false\n\t\t\t\t })\n\t\t\t\t: [],\n\t\t[CustomComponent, itemProps, roots, view]\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nexport * from './store';\nexport * from './hooks';\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport create from 'zustand';\nimport { FolderState } from '../../../types';\nimport { folderWorker } from '../../workers';\n\nexport const useFolderStore = create<FolderState>(() => ({\n\tfolders: {},\n\troots: {},\n\tsearches: {}\n}));\n\nfolderWorker.onmessage = ({ data }): void => {\n\tuseFolderStore.setState(data);\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport { sortBy } from 'lodash';\nimport { Folder, FolderView, LinkFolder, TreeNode } from '../../../types';\nimport { FOLDERS, ROOT_NAME } from '../../constants';\n\nconst hasId = (f: Folder | TreeNode<unknown>, id: string): boolean => f.id.split(':').includes(id);\nconst getOriginalId = (f: Folder): string => {\n\tconst parts = f.id.split(':');\n\treturn parts[1] ?? parts[0];\n};\nexport const sortFolders = (f: Folder): string => {\n\tconst id = getOriginalId(f);\n\tif (id === FOLDERS.TRASH) {\n\t\treturn '~';\n\t}\n\treturn parseInt(id, 10) < 17 ? ` ${id}` : f.name.toLowerCase();\n};\n\nexport const isTrash = (f: Folder): boolean => hasId(f, FOLDERS.TRASH);\n\nexport const isRoot = (f: Folder): boolean =>\n\tf.id === FOLDERS.USER_ROOT || (f as LinkFolder).oname === ROOT_NAME;\n\nexport const folderViewFilter =\n\t(v: FolderView) =>\n\t(deep?: boolean) =>\n\t(f: Folder): boolean =>\n\t\tf.view === v || !deep || (typeof f.view === 'undefined' && !isRoot(f));\n\nexport const filterNodes = <T>(\n\tchildren: TreeNode<T>[],\n\tf: (deep?: boolean) => (i: TreeNode<T>) => boolean,\n\tsortFunction?: (i: TreeNode<T>) => number | string,\n\tdeep?: boolean\n): TreeNode<T>[] => {\n\tconst childrenSorted = sortFunction ? sortBy(children, sortFunction) : children;\n\treturn childrenSorted\n\t\t.filter(f(deep))\n\t\t.map((i) => ({ ...i, children: filterNodes<TreeNode<T>>(i.children, f, sortFunction, true) }));\n};\n\ntype MapNodesOptions<T, U> = {\n\tmapFunction: (i: TreeNode<T>) => U;\n\tfilterFunction: (deep?: boolean) => (i: TreeNode<T>) => boolean;\n\trecursionKey: keyof U;\n\tsortFunction: (i: TreeNode<T>) => number | string;\n\tdeep: boolean;\n};\nexport const mapNodes = <T, U>(\n\tchildren: TreeNode<T>[],\n\t{ mapFunction, filterFunction, recursionKey, sortFunction, deep }: MapNodesOptions<T, U>\n): U[] =>\n\tsortBy(children, sortFunction).reduce((acc, folder) => {\n\t\tif (filterFunction(deep)(folder)) {\n\t\t\tacc.push({\n\t\t\t\t...mapFunction(folder),\n\t\t\t\t[recursionKey]: mapNodes<TreeNode<T>, U>(folder.children, {\n\t\t\t\t\tmapFunction,\n\t\t\t\t\tfilterFunction,\n\t\t\t\t\trecursionKey,\n\t\t\t\t\tsortFunction,\n\t\t\t\t\tdeep: true\n\t\t\t\t})\n\t\t\t});\n\t\t}\n\t\treturn acc;\n\t}, [] as U[]);\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport { i18n, TFunction } from 'i18next';\nimport { useI18nStore } from './store';\n\nexport const useI18n = (app: string) => (): i18n =>\n\t// eslint-disable-next-line react-hooks/rules-of-hooks\n\tuseI18nStore((s) => s.instances[app] ?? s.defaultI18n);\n\nexport const useLocale = (): string => useI18nStore((s) => s.locale);\n\nexport const getI18n = (app: string) => (): i18n => {\n\tconst { instances, defaultI18n } = useI18nStore.getState();\n\treturn instances[app] ?? defaultI18n;\n};\n\nexport const getTFunction = (app: string): TFunction => {\n\tconst { instances, defaultI18n } = useI18nStore.getState();\n\treturn instances[app]?.t ?? defaultI18n.t;\n};\n\nexport const getLocale = (): string => useI18nStore.getState().locale;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nexport * from './hooks';\nexport * from './store';\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport i18next, { i18n } from 'i18next';\nimport { dropRight, forEach, map, reduce } from 'lodash';\nimport create from 'zustand';\nimport Backend from 'i18next-http-backend';\nimport { CarbonioModule, I18nState } from '../../../types';\n\nconst defaultI18n = i18next.createInstance();\n\nexport const useI18nStore = create<I18nState>(() => ({\n\tinstances: {},\n\tdefaultI18n,\n\tlocale: 'en'\n}));\n\nexport const setLocale = (locale: string): void => {\n\tconst { instances } = useI18nStore.getState();\n\tforEach(instances, (i18nInst) => i18nInst.changeLanguage(locale));\n\tuseI18nStore.setState(() => ({\n\t\tlocale\n\t}));\n};\n\ndefaultI18n\n\t.use(Backend)\n\t// init i18next\n\t// for all options read: https://www.i18next.com/overview/configuration-options\n\t.init({\n\t\treturnEmptyString: true,\n\t\tcompatibilityJSON: 'v3',\n\t\tlng: useI18nStore.getState().locale,\n\t\tfallbackLng: 'en',\n\t\tdebug: false,\n\t\tinterpolation: {\n\t\t\tescapeValue: false // not needed for react as it escapes by default\n\t\t},\n\t\tmissingKeyHandler: (_, __, key) => {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.warn(`Missing translation with key '${key}'`);\n\t\t},\n\t\tbackend: {\n\t\t\tloadPath: `${BASE_PATH}/i18n/{{lng}}.json`\n\t\t}\n\t});\n\nexport const addI18n = (apps: CarbonioModule[]): void => {\n\tuseI18nStore.setState({\n\t\tinstances: reduce(\n\t\t\tapps,\n\t\t\t(acc, app) => {\n\t\t\t\tconst newI18n = i18next.createInstance();\n\t\t\t\tnewI18n\n\t\t\t\t\t// load translation using http -> see /public/locales (i.e. https://github.com/i18next/react-i18next/tree/master/example/react/public/locales)\n\t\t\t\t\t// learn more: https://github.com/i18next/i18next-http-backend\n\t\t\t\t\t.use(Backend)\n\t\t\t\t\t// init i18next\n\t\t\t\t\t// for all options read: https://www.i18next.com/overview/configuration-options\n\t\t\t\t\t.init({\n\t\t\t\t\t\treturnEmptyString: true,\n\t\t\t\t\t\tcompatibilityJSON: 'v3',\n\t\t\t\t\t\tlng: useI18nStore.getState().locale,\n\t\t\t\t\t\tfallbackLng: 'en',\n\t\t\t\t\t\tdebug: false,\n\t\t\t\t\t\tinterpolation: {\n\t\t\t\t\t\t\tescapeValue: false // not needed for react as it escapes by default\n\t\t\t\t\t\t},\n\t\t\t\t\t\tmissingKeyHandler: (_, __, key) => {\n\t\t\t\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\t\t\t\tconsole.warn(`Missing translation with key '${key}'`);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tbackend: {\n\t\t\t\t\t\t\tloadPath: `${dropRight(app.js_entrypoint.split('/')).join('/')}/i18n/{{lng}}.json`\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t// eslint-disable-next-line no-param-reassign\n\t\t\t\tacc[app.name] = newI18n;\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{} as Record<string, i18n>\n\t\t)\n\t});\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC, useCallback, useMemo, useRef } from 'react';\nimport { Container } from '@zextras/carbonio-design-system';\nimport styled from 'styled-components';\n// TinyMCE so the global var exists\n// eslint-disable-next-line no-unused-vars\nimport tinymce from 'tinymce/tinymce';\n// this 'expression' prevents webpack from stripping it, maybe there's a better way\n// eslint-disable-next-line no-unused-expressions\ntinymce;\n\n// Theme\nimport 'tinymce/themes/silver';\n// Toolbar icons\nimport 'tinymce/icons/default';\n// Editor styles\nimport 'tinymce/skins/ui/oxide/skin.min.css';\n\n// importing the plugin js.\nimport 'tinymce/plugins/advlist';\nimport 'tinymce/plugins/autolink';\nimport 'tinymce/plugins/lists';\nimport 'tinymce/plugins/link';\nimport 'tinymce/plugins/image';\nimport 'tinymce/plugins/charmap';\nimport 'tinymce/plugins/code';\nimport 'tinymce/plugins/print';\nimport 'tinymce/plugins/preview';\nimport 'tinymce/plugins/anchor';\nimport 'tinymce/plugins/searchreplace';\nimport 'tinymce/plugins/visualblocks';\nimport 'tinymce/plugins/fullscreen';\nimport 'tinymce/plugins/insertdatetime';\nimport 'tinymce/plugins/media';\nimport 'tinymce/plugins/table';\nimport 'tinymce/plugins/paste';\nimport 'tinymce/plugins/help';\nimport 'tinymce/plugins/wordcount';\nimport 'tinymce/plugins/quickbars';\nimport 'tinymce/plugins/directionality';\nimport 'tinymce/plugins/autoresize';\n\nimport { Editor } from '@tinymce/tinymce-react';\nimport { useTranslation } from 'react-i18next';\nimport { useUserSettings } from '../account';\n\ntype ComposerProps = {\n\t/** The callback invoked when an edit is performed into the editor. `([text, html]) => {}` */\n\tonEditorChange?: (values: [string, string]) => void;\n\t/** Enable the distraction-free mode */\n\tinline?: boolean;\n\t/** The initial content of the editor */\n\tinitialValue?: string;\n\t/** The content of the editor (controlled mode) */\n\tvalue?: string;\n\t/** The base url to append to the resource urls */\n\tbaseAssetsUrl?: string;\n\tonFileSelect?: (arg: any) => void;\n};\n\nexport const FileInput = styled.input`\n\tdisplay: none;\n`;\n\nconst Composer: FC<ComposerProps> = ({\n\tonEditorChange,\n\tonFileSelect,\n\tinline = false,\n\tvalue,\n\tbaseAssetsUrl,\n\tinitialValue,\n\n\t...rest\n}) => {\n\tconst _onEditorChange = useCallback(\n\t\t(newContent, editor) => {\n\t\t\tonEditorChange?.([\n\t\t\t\teditor.getContent({ format: 'text' }),\n\t\t\t\teditor.getContent({ format: 'html' })\n\t\t\t]);\n\t\t},\n\t\t[onEditorChange]\n\t);\n\tconst { prefs } = useUserSettings();\n\tconst defaultStyle = useMemo(\n\t\t() => ({\n\t\t\tfont: prefs?.zimbraPrefHtmlEditorDefaultFontFamily,\n\t\t\tfontSize: prefs?.zimbraPrefHtmlEditorDefaultFontSize,\n\t\t\tcolor: prefs?.zimbraPrefHtmlEditorDefaultFontColor\n\t\t}),\n\t\t[prefs]\n\t);\n\tconst inputRef = useRef<any>();\n\tconst onFileClick = useCallback(() => {\n\t\tif (inputRef.current) {\n\t\t\tinputRef.current.value = null;\n\t\t\tinputRef.current.click();\n\t\t}\n\t}, []);\n\tconst { t } = useTranslation();\n\tconst inlineLabel = useMemo(() => t('label.add_inline_image', 'Add inline image'), [t]);\n\treturn (\n\t\t<Container\n\t\t\theight=\"100%\"\n\t\t\tcrossAlignment=\"baseline\"\n\t\t\tmainAlignment=\"flex-start\"\n\t\t\tstyle={{ overflowY: 'hidden' }}\n\t\t>\n\t\t\t<FileInput\n\t\t\t\ttype=\"file\"\n\t\t\t\tref={inputRef}\n\t\t\t\taccept=\"image/*\"\n\t\t\t\tonChange={(): void => {\n\t\t\t\t\tonFileSelect && onFileSelect({ editor: tinymce, files: inputRef?.current?.files });\n\t\t\t\t}}\n\t\t\t\tmultiple\n\t\t\t/>\n\n\t\t\t<Editor\n\t\t\t\tinitialValue={initialValue}\n\t\t\t\tvalue={value}\n\t\t\t\tinit={{\n\t\t\t\t\tcontent_css: `${baseAssetsUrl}/tinymce/skins/content/default/content.css`,\n\t\t\t\t\tsetup: (editor: any): void => {\n\t\t\t\t\t\tif (onFileSelect)\n\t\t\t\t\t\t\teditor.ui.registry.addMenuButton('imageSelector', {\n\t\t\t\t\t\t\t\ticon: 'gallery',\n\t\t\t\t\t\t\t\ttooltip: 'Select Image',\n\t\t\t\t\t\t\t\tfetch: (callback: any) => {\n\t\t\t\t\t\t\t\t\tconst items = [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\ttype: 'menuitem',\n\t\t\t\t\t\t\t\t\t\t\ttext: inlineLabel,\n\t\t\t\t\t\t\t\t\t\t\tonAction: (): void => {\n\t\t\t\t\t\t\t\t\t\t\t\tonFileClick();\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t];\n\t\t\t\t\t\t\t\t\tcallback(items);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t},\n\t\t\t\t\tmin_height: 350,\n\t\t\t\t\tauto_focus: true,\n\t\t\t\t\tmenubar: false,\n\t\t\t\t\tstatusbar: false,\n\t\t\t\t\tbranding: false,\n\t\t\t\t\tresize: true,\n\t\t\t\t\tinline,\n\t\t\t\t\tfontsize_formats:\n\t\t\t\t\t\t'8pt 9pt 10pt 11pt 12pt 13pt 14pt 16pt 18pt 24pt 30pt 36pt 48pt 60pt 72pt 96pt',\n\t\t\t\t\tobject_resizing: 'img',\n\t\t\t\t\tstyle_formats: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttitle: 'Headers',\n\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t{ title: 'h1', block: 'h1' },\n\t\t\t\t\t\t\t\t{ title: 'h2', block: 'h2' },\n\t\t\t\t\t\t\t\t{ title: 'h3', block: 'h3' },\n\t\t\t\t\t\t\t\t{ title: 'h4', block: 'h4' },\n\t\t\t\t\t\t\t\t{ title: 'h5', block: 'h5' },\n\t\t\t\t\t\t\t\t{ title: 'h6', block: 'h6' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttitle: 'Blocks',\n\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t{ title: 'p', block: 'p' },\n\t\t\t\t\t\t\t\t{ title: 'div', block: 'div' },\n\t\t\t\t\t\t\t\t{ title: 'pre', block: 'pre' }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttitle: 'Containers',\n\t\t\t\t\t\t\titems: [\n\t\t\t\t\t\t\t\t{ title: 'section', block: 'section', wrapper: true, merge_siblings: false },\n\t\t\t\t\t\t\t\t{ title: 'article', block: 'article', wrapper: true, merge_siblings: false },\n\t\t\t\t\t\t\t\t{ title: 'blockquote', block: 'blockquote', wrapper: true },\n\t\t\t\t\t\t\t\t{ title: 'hgroup', block: 'hgroup', wrapper: true },\n\t\t\t\t\t\t\t\t{ title: 'aside', block: 'aside', wrapper: true },\n\t\t\t\t\t\t\t\t{ title: 'figure', block: 'figure', wrapper: true }\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\tplugins: [\n\t\t\t\t\t\t'advlist',\n\t\t\t\t\t\t'autolink',\n\t\t\t\t\t\t'lists',\n\t\t\t\t\t\t'link',\n\t\t\t\t\t\t'image',\n\t\t\t\t\t\t'edit',\n\t\t\t\t\t\t'file',\n\t\t\t\t\t\t'charmap',\n\t\t\t\t\t\t'print',\n\t\t\t\t\t\t'preview',\n\t\t\t\t\t\t'anchor',\n\t\t\t\t\t\t'searchreplace',\n\t\t\t\t\t\t'code',\n\t\t\t\t\t\t'fullscreen',\n\t\t\t\t\t\t'insertdatetime',\n\t\t\t\t\t\t'media',\n\t\t\t\t\t\t'table',\n\t\t\t\t\t\t'paste',\n\t\t\t\t\t\t'code',\n\t\t\t\t\t\t'help',\n\t\t\t\t\t\t'quickbars',\n\t\t\t\t\t\t'directionality',\n\t\t\t\t\t\t'autoresize',\n\t\t\t\t\t\t'visualblocks'\n\t\t\t\t\t],\n\n\t\t\t\t\ttoolbar: inline\n\t\t\t\t\t\t? false\n\t\t\t\t\t\t: // eslint-disable-next-line max-len\n\t\t\t\t\t\t 'fontselect fontsizeselect styleselect visualblocks| bold italic underline strikethrough | removeformat code | alignleft aligncenter alignright alignjustify | forecolor backcolor | bullist numlist outdent indent | ltr rtl | insertfile image | imageSelector ',\n\t\t\t\t\tquickbars_insert_toolbar: inline ? 'bullist numlist' : '',\n\t\t\t\t\tquickbars_selection_toolbar: inline\n\t\t\t\t\t\t? 'bold italic underline | forecolor backcolor | removeformat | quicklink'\n\t\t\t\t\t\t: 'quicklink',\n\t\t\t\t\tcontextmenu: inline ? '' : '',\n\t\t\t\t\ttoolbar_mode: 'wrap',\n\t\t\t\t\tforced_root_block: false,\n\t\t\t\t\tcontent_style: `body { color: ${defaultStyle?.color}; font-size: ${defaultStyle?.fontSize}; font-family: ${defaultStyle?.font}; }`,\n\t\t\t\t\tvisualblocks_default_state: false,\n\t\t\t\t\tend_container_on_empty_block: true\n\t\t\t\t}}\n\t\t\t\tonEditorChange={_onEditorChange}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</Container>\n\t);\n};\n\nexport default Composer;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable react-hooks/rules-of-hooks */\n/* THIS FILE CONTAINS HOOKS, BUT ESLINT IS DUMB */\n\nimport { compact, map } from 'lodash';\nimport React, { FC, FunctionComponent } from 'react';\nimport { useIntegrationsStore } from './store';\nimport { Action, ActionFactory } from '../../../types';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport AppContextProvider from '../../boot/app/app-context-provider';\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const getIntegratedHook = (id: string): [Function, boolean] => {\n\tconst integration = useIntegrationsStore.getState().hooks?.[id];\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\treturn integration ? [integration, true] : [(): void => {}, false];\n};\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const getIntegratedFunction = (id: string): [Function, boolean] => {\n\tconst integration = useIntegrationsStore.getState().functions?.[id];\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\treturn integration ? [integration, true] : [(): void => {}, false];\n};\n\nexport const getIntegratedComponent = (id: string): [FunctionComponent<unknown>, boolean] => {\n\tconst Integration = useIntegrationsStore.getState().components?.[id];\n\tif (Integration) {\n\t\tconst C: FC = (props: unknown) => (\n\t\t\t<AppContextProvider pkg={Integration.app}>\n\t\t\t\t{/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n\t\t\t\t{/* @ts-ignore */}\n\t\t\t\t<Integration.item {...props} />\n\t\t\t</AppContextProvider>\n\t\t);\n\t\treturn [C, true];\n\t}\n\treturn [(): null => null, false];\n};\n\nexport const getActions = <T,>(target: T, type: string): Array<Action> => {\n\tconst factories = useIntegrationsStore.getState().actions[type];\n\treturn compact(\n\t\tmap(factories, (f) => {\n\t\t\ttry {\n\t\t\t\tconst action = f(target);\n\t\t\t\treturn action;\n\t\t\t} catch (e) {\n\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\tconsole.error(e);\n\t\t\t\treturn undefined;\n\t\t\t}\n\t\t})\n\t);\n};\n\nexport const getActionsFactory = (type: string): (<T>(target: T) => Array<Action>) => {\n\tconst factories = useIntegrationsStore.getState().actions[type];\n\treturn <T,>(target: T): Array<Action> =>\n\t\tcompact(\n\t\t\tmap(factories, (f) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst action = f(target);\n\t\t\t\t\treturn action;\n\t\t\t\t} catch (e) {\n\t\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\t\tconsole.error(e);\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t})\n\t\t);\n};\n\nexport const getAction = <T,>(\n\ttype: string,\n\tid: string,\n\ttarget?: T\n): [Action | undefined, boolean] => {\n\tconst factory = useIntegrationsStore.getState().actions[type]?.[id];\n\tconst action = factory?.(target);\n\treturn [action, !!action];\n};\n\nexport const getActionFactory = <T,>(\n\ttype: string,\n\tid: string\n): [ActionFactory<T> | undefined, boolean] => {\n\tconst factory = useIntegrationsStore.getState().actions[type]?.[id];\n\treturn [factory, !!factory];\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n/* eslint-disable react-hooks/rules-of-hooks */\n/* THIS FILE CONTAINS HOOKS, BUT ESLINT IS DUMB */\n\nimport { compact, map } from 'lodash';\nimport React, { useMemo, FC, FunctionComponent, useCallback } from 'react';\nimport { useIntegrationsStore } from './store';\nimport { Action, ActionFactory, CombinedActionFactory } from '../../../types';\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport AppContextProvider from '../../boot/app/app-context-provider';\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const useIntegratedHook = (id: string): [Function, boolean] => {\n\tconst integration = useIntegrationsStore((s) => s.hooks?.[id]);\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\treturn integration ? [integration, true] : [(): void => {}, false];\n};\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport const useIntegratedFunction = (id: string): [Function, boolean] => {\n\tconst integration = useIntegrationsStore((s) => s.functions?.[id]);\n\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\treturn integration ? [integration, true] : [(): void => {}, false];\n};\n\nexport const useIntegratedComponent = (id: string): [FunctionComponent<unknown>, boolean] => {\n\tconst Integration = useIntegrationsStore((s) => s.components?.[id]);\n\treturn useMemo(() => {\n\t\tif (Integration) {\n\t\t\tconst C: FC = (props: unknown) => (\n\t\t\t\t<AppContextProvider pkg={Integration.app}>\n\t\t\t\t\t{/* eslint-disable-next-line @typescript-eslint/ban-ts-comment */}\n\t\t\t\t\t{/* @ts-ignore */}\n\t\t\t\t\t<Integration.item {...props} />\n\t\t\t\t</AppContextProvider>\n\t\t\t);\n\t\t\treturn [C, true];\n\t\t}\n\t\treturn [(): null => null, false];\n\t}, [Integration]);\n};\n\nexport const useActions = <T,>(target: T, type: string): Array<Action> => {\n\tconst factories = useIntegrationsStore((s) => s.actions[type]);\n\tconst actions = useMemo(\n\t\t() =>\n\t\t\tcompact(\n\t\t\t\tmap(factories, (f) => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst action = f(target);\n\t\t\t\t\t\treturn action;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\t\t\tconsole.error(e);\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t) ?? [],\n\t\t[factories, target]\n\t);\n\treturn actions;\n};\n\nexport const useActionsFactory = <T,>(type: string): CombinedActionFactory<T> => {\n\tconst factories = useIntegrationsStore((s) => s.actions[type]);\n\tconst combinedFactory = useCallback(\n\t\t(target: unknown) =>\n\t\t\tcompact(\n\t\t\t\tmap(factories, (f) => {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tconst action = f(target);\n\t\t\t\t\t\treturn action;\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t// eslint-disable-next-line no-console\n\t\t\t\t\t\tconsole.error(e);\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t),\n\t\t[factories]\n\t);\n\treturn combinedFactory;\n};\n\nexport const useAction = <T,>(\n\ttype: string,\n\tid: string,\n\ttarget?: T\n): [Action | undefined, boolean] => {\n\tconst factory = useIntegrationsStore((s) => s.actions[type][id]);\n\tconst action = useMemo(() => {\n\t\ttry {\n\t\t\treturn factory?.(target);\n\t\t} catch (e) {\n\t\t\treturn undefined;\n\t\t}\n\t}, [factory, target]);\n\treturn [action, !!action];\n};\n\nexport const useActionFactory = <T,>(\n\ttype: string,\n\tid: string\n): [ActionFactory<T> | undefined, boolean] => {\n\tconst factory = useIntegrationsStore((s) => s.actions[type][id]);\n\treturn [factory, !!factory];\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport produce from 'immer';\nimport create from 'zustand';\nimport { forEach, omit, reduce } from 'lodash';\nimport { ComponentType } from 'react';\nimport { ActionFactory, AnyFunction, IntegrationsState, SHELL_APP_ID } from '../../../types';\nimport Composer from './composer';\n\nexport const useIntegrationsStore = create<IntegrationsState>((set) => ({\n\tactions: {},\n\tcomponents: {\n\t\tcomposer: {\n\t\t\titem: Composer,\n\t\t\tapp: SHELL_APP_ID\n\t\t}\n\t},\n\thooks: {},\n\tfunctions: {},\n\tregisterActions: <T>(\n\t\t...items: Array<{ id: string; action: ActionFactory<T>; type: string }>\n\t): void =>\n\t\tset(\n\t\t\tproduce((state) => {\n\t\t\t\tforEach(items, ({ id, action, type }) => {\n\t\t\t\t\tif (!state.actions[type]) state.actions[type] = {};\n\t\t\t\t\tstate.actions[type][id] = action;\n\t\t\t\t});\n\t\t\t})\n\t\t),\n\tregisterComponents:\n\t\t(app: string) =>\n\t\t(...items: Array<{ id: string; component: ComponentType }>): void =>\n\t\t\tset(\n\t\t\t\tproduce((state) => {\n\t\t\t\t\tforEach(items, ({ id, component }) => {\n\t\t\t\t\t\tstate.components[id] = { app, item: component };\n\t\t\t\t\t});\n\t\t\t\t})\n\t\t\t),\n\tregisterHooks: (...items: Array<{ id: string; hook: AnyFunction }>): void =>\n\t\tset(\n\t\t\tproduce((state) => {\n\t\t\t\tforEach(items, ({ id, hook }) => {\n\t\t\t\t\tstate.hooks[id] = hook;\n\t\t\t\t});\n\t\t\t})\n\t\t),\n\tregisterFunctions: (...items: Array<{ id: string; fn: AnyFunction }>): void =>\n\t\tset(\n\t\t\tproduce((state) => {\n\t\t\t\tforEach(items, ({ id, fn }) => {\n\t\t\t\t\tstate.functions[id] = fn;\n\t\t\t\t});\n\t\t\t})\n\t\t),\n\tremoveActions: (...ids: Array<string>): void =>\n\t\tset((s) => ({\n\t\t\t...s,\n\t\t\tactions: reduce(\n\t\t\t\ts.actions,\n\t\t\t\t(acc, actions, type) => ({ ...acc, [type]: omit(actions, ids) }),\n\t\t\t\t{}\n\t\t\t)\n\t\t})),\n\tremoveComponents: (...ids: Array<string>): void =>\n\t\tset((s) => ({\n\t\t\t...s,\n\t\t\tactions: omit(s.components, ids)\n\t\t})),\n\tremoveHooks: (...ids: Array<string>): void =>\n\t\tset((s) => ({\n\t\t\t...s,\n\t\t\tactions: omit(s.hooks, ids)\n\t\t})),\n\tremoveFunctions: (...ids: Array<string>): void =>\n\t\tset((s) => ({\n\t\t\t...s,\n\t\t\tactions: omit(s.functions, ids)\n\t\t}))\n}));\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport { SoapNotify, SoapRefresh } from '../../../types';\nimport { useNetworkStore } from './store';\n\nexport const useNotify = (): SoapNotify[] => {\n\tconst notify = useNetworkStore((s) => s.notify ?? []);\n\treturn notify;\n};\nexport const useRefresh = (): SoapRefresh => useNetworkStore((s) => s.refresh ?? {});\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nexport * from './store';\nexport * from './hooks';\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport create from 'zustand';\nimport { NetworkState } from '../../../types';\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nexport const useNetworkStore = create<NetworkState>(() => ({\n\tpollingInterval: 30000,\n\tseq: 0\n}));\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { forEach } from 'lodash';\nimport { SoapContext } from '../../../types';\nimport { folderWorker, tagWorker } from '../../workers';\nimport { useFolderStore } from '../folder';\nimport { useTagStore } from '../tags';\nimport { useNetworkStore } from './store';\n\nexport const handleSync = ({ refresh, notify }: SoapContext): Promise<void> =>\n\tnew Promise((r) => {\n\t\tconst { seq } = useNetworkStore.getState();\n\t\tif (refresh) {\n\t\t\ttagWorker.postMessage({\n\t\t\t\top: 'refresh',\n\t\t\t\ttags: refresh.tags\n\t\t\t});\n\t\t\tfolderWorker.postMessage({\n\t\t\t\top: 'refresh',\n\t\t\t\tfolder: refresh.folder ?? []\n\t\t\t});\n\t\t}\n\t\tif (notify?.length) {\n\t\t\tforEach(notify, (item) => {\n\t\t\t\tif (item.seq > seq) {\n\t\t\t\t\ttagWorker.postMessage({\n\t\t\t\t\t\top: 'notify',\n\t\t\t\t\t\tnotify: item,\n\t\t\t\t\t\tstate: useTagStore.getState().tags\n\t\t\t\t\t});\n\t\t\t\t\tfolderWorker.postMessage({\n\t\t\t\t\t\top: 'notify',\n\t\t\t\t\t\tnotify: item,\n\t\t\t\t\t\tstate: useFolderStore.getState().folders\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\tr();\n\t});\n// export const noOp = (): void => {\n// \t// eslint-disable-next-line @typescript-eslint/no-use-before-define\n// \tgetSoapFetch(SHELL_APP_ID)(\n// \t\t'NoOp',\n// \t\tuseNetworkStore.getState().pollingInterval === 500\n// \t\t\t? { _jsns: 'urn:zimbraMail', limitToOneBlocked: 1, wait: 1 }\n// \t\t\t: { _jsns: 'urn:zimbraMail' }\n// \t);\n// };\n// export const handleSoapContext = ({ notify, refresh, session, change }: SoapContext): void =>\n// \tuseNetworkStore.setState({\n// \t\tsession,\n// \t\tchange,\n// \t\trefresh,\n// \t\tseq: maxBy(notify, 'seq'),\n// \t\tnoOpTimeout: setTimeout(() => noOp(), pollingInterval),\n// \t\tnotify: map(notify, (notifyItem) => ({\n// \t\t\t...notifyItem,\n// \t\t\tdeleted: notifyItem.deleted?.id?.split(',')\n// \t\t}))\n// \t});\n// // handleTagSync(_context);\n// // useNetworkStore.setState({\n// // \tnoOpTimeout: setTimeout(() => noOp(), pollingInterval),\n// // \t,\n// // \t...res?.Header?.context\n// // });\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { pick } from 'lodash';\nimport { Tags } from '../../../types';\nimport { useTagStore } from './store';\n\n/* eslint-disable react-hooks/rules-of-hooks */\n/* THIS FILE CONTAINS HOOKS, BUT ESLINT IS DUMB */\n\nexport const useTags = (ids?: Array<string> | string): Tags =>\n\tuseTagStore((s) => (ids ? pick(s.tags, ids) : s.tags));\nexport const getTags = (ids?: Array<string> | string): Tags =>\n\tids ? pick(useTagStore.getState().tags, ids) : useTagStore.getState().tags;\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nexport * from './hooks';\nexport * from './store';\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport create from 'zustand';\nimport { TagState } from '../../../types';\nimport { tagWorker } from '../../workers';\n\nexport const useTagStore = create<TagState>(() => ({\n\ttags: {}\n}));\n\ntagWorker.onmessage = ({ data }): void => {\n\tuseTagStore.setState(data);\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC, useMemo } from 'react';\nimport { Link as RRLink, LinkProps } from 'react-router-dom';\nimport { parseParams } from '../history/hooks';\n\ntype AppLinkProps = LinkProps & {\n\troute?: string;\n};\nexport const AppLink: FC<AppLinkProps> = ({ to, route, ...rest }) => {\n\tconst _to = useMemo(() => parseParams({ path: to, route }), [route, to]);\n\treturn <RRLink style={{ textDecoration: 'none' }} to={_to} {...rest} />;\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { useEffect, useState, FC, useMemo } from 'react';\nimport { Location } from 'history';\nimport { Prompt, useHistory } from 'react-router-dom';\nimport { Modal } from '@zextras/carbonio-design-system';\nimport { useTranslation } from 'react-i18next';\n\nexport const RouteLeavingGuard: FC<{\n\twhen?: boolean;\n\tonSave: () => void;\n}> = ({ children, when, onSave }) => {\n\tconst history = useHistory();\n\tconst lastLocationInitial = useMemo(() => history.location.pathname, [history]);\n\tconst [modalVisible, setModalVisible] = useState(false);\n\tconst [lastLocation, setLastLocation] = useState<Location>(lastLocationInitial);\n\tconst [confirmedNavigation, setConfirmedNavigation] = useState(false);\n\tconst [t] = useTranslation();\n\tconst onClose = (): void => {\n\t\tsetModalVisible(false);\n\t\tsetConfirmedNavigation(true);\n\t};\n\tconst handleBlockedNavigation = (nextLocation: Location): boolean => {\n\t\tif (\n\t\t\t!confirmedNavigation &&\n\t\t\tnextLocation.pathname !== (lastLocation?.pathname || lastLocationInitial)\n\t\t) {\n\t\t\tsetModalVisible(true);\n\t\t\tsetLastLocation(nextLocation);\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t};\n\tconst onConfirm = (): void => {\n\t\tsetModalVisible(false);\n\t\tonSave();\n\t\tsetConfirmedNavigation(true);\n\t};\n\tuseEffect(() => {\n\t\tif (confirmedNavigation && lastLocation) {\n\t\t\t// Navigate to the previous blocked location with your navigate function\n\t\t\thistory.push(lastLocation.pathname);\n\t\t}\n\t}, [confirmedNavigation, history, lastLocation]);\n\treturn (\n\t\t<>\n\t\t\t<Prompt when={when} message={handleBlockedNavigation} />\n\t\t\t{/* Your own alert/dialog/modal component */}\n\t\t\t<Modal\n\t\t\t\topen={modalVisible}\n\t\t\t\tonClose={onClose}\n\t\t\t\tonConfirm={onConfirm}\n\t\t\t\ttitle={t('label.unsaved_changes', 'You have unsaved changes')}\n\t\t\t\tdismissLabel={t('label.leave_anyway', 'Leave anyway')}\n\t\t\t\tconfirmLabel={t('label.save_and_leave', 'Save and leave')}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Modal>\n\t\t</>\n\t);\n};\nexport default RouteLeavingGuard;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport React, { FC } from 'react';\nimport { Button, Container } from '@zextras/carbonio-design-system';\nimport { noop } from 'lodash';\n\nexport const Spinner: FC = () => (\n\t<Container width=\"fill\" height=\"fill\" mainAlignment=\"center\" crossAlignment=\"center\">\n\t\t{/* the \"Button\" string doesn't need to be translated as it's not rendered */}\n\t\t<Button type=\"ghost\" label=\"Button\" color=\"primary\" loading onClick={noop} />\n\t</Container>\n);\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC, useCallback, useMemo } from 'react';\nimport {\n\tContainer,\n\tDropdown,\n\tDropdownItem,\n\tIconButton,\n\tTooltip\n} from '@zextras/carbonio-design-system';\nimport { map, noop } from 'lodash';\nimport { useTranslation } from 'react-i18next';\nimport { useUtilityBarStore } from './store';\nimport { SHELL_APP_ID, UtilityView } from '../../types';\nimport { useUtilityViews } from './utils';\nimport { logout } from '../network/logout';\nimport { noOp } from '../network/fetch';\nimport { useUserAccount } from '../store/account';\nimport { addBoard } from '../store/boards';\n\nconst UtilityBarItem: FC<{ view: UtilityView }> = ({ view }) => {\n\tconst { mode, setMode, current, setCurrent } = useUtilityBarStore();\n\tconst onClick = useCallback((): void => {\n\t\t// eslint-disable-next-line no-nested-ternary\n\t\tsetMode(current !== view.id ? 'open' : mode !== 'open' ? 'open' : 'closed');\n\t\tsetCurrent(view.id);\n\t}, [current, mode, setCurrent, setMode, view.id]);\n\tif (typeof view.button === 'string') {\n\t\treturn (\n\t\t\t<Tooltip label={view.label} placement=\"bottom-end\">\n\t\t\t\t<IconButton\n\t\t\t\t\ticon={view.button}\n\t\t\t\t\ticonColor={current === view.id ? 'primary' : 'text'}\n\t\t\t\t\tonClick={onClick}\n\t\t\t\t\tsize=\"large\"\n\t\t\t\t/>\n\t\t\t</Tooltip>\n\t\t);\n\t}\n\treturn <view.button mode={mode} setMode={setMode} />;\n};\n\nexport const ShellUtilityBar: FC = () => {\n\tconst views = useUtilityViews();\n\tconst [t] = useTranslation();\n\tconst account = useUserAccount();\n\tconst accountItems = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t{\n\t\t\t\t\tid: 'account',\n\t\t\t\t\tlabel: account?.displayName ?? 'Account',\n\t\t\t\t\tdisabled: true\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'email',\n\t\t\t\t\tlabel: account?.name ?? '',\n\t\t\t\t\tdisabled: true,\n\t\t\t\t\titemTextSize: 'small'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttype: 'divider',\n\t\t\t\t\tid: 'divider',\n\t\t\t\t\tlabel: 'divider'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'feedback',\n\t\t\t\t\tlabel: t('label.feedback', 'Feedback'),\n\t\t\t\t\tclick: () =>\n\t\t\t\t\t\taddBoard(SHELL_APP_ID)({\n\t\t\t\t\t\t\turl: 'feedback',\n\t\t\t\t\t\t\ttitle: t('label.feedback', 'Feedback'),\n\t\t\t\t\t\t\ticon: 'MessageSquareOutline'\n\t\t\t\t\t\t}),\n\t\t\t\t\ticon: 'MessageSquareOutline'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'update',\n\t\t\t\t\tlabel: t('label.update_view', 'Update view'),\n\t\t\t\t\tclick: (): void => noOp(),\n\t\t\t\t\ticon: 'Refresh'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'docs',\n\t\t\t\t\tlabel: t('label.documentation', 'Documentation'),\n\t\t\t\t\t// TODO: Replace when the correct link is available\n\t\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-empty-function\n\t\t\t\t\tclick: (): void => {},\n\t\t\t\t\tdisabled: true,\n\t\t\t\t\ticon: 'InfoOutline'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tid: 'logout',\n\t\t\t\t\tlabel: t('label.logout', 'Logout'),\n\t\t\t\t\tclick: logout,\n\t\t\t\t\ticon: 'LogOut'\n\t\t\t\t}\n\t\t\t] as DropdownItem[],\n\t\t[account, t]\n\t);\n\treturn (\n\t\t<Container orientation=\"horizontal\" width=\"fit\">\n\t\t\t{map(views, (view) => (\n\t\t\t\t<UtilityBarItem view={view} key={view.id} />\n\t\t\t))}\n\t\t\t<Tooltip label={account?.displayName ?? account?.name} placement=\"bottom-end\">\n\t\t\t\t<Dropdown items={accountItems} maxWidth=\"300px\" disableAutoFocus>\n\t\t\t\t\t<IconButton icon=\"PersonOutline\" size=\"large\" onClick={noop} />\n\t\t\t\t</Dropdown>\n\t\t\t</Tooltip>\n\t\t</Container>\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nexport * from './bar';\nexport * from './panel';\nexport * from './store';\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport React, { FC, useEffect, useMemo } from 'react';\nimport { Container, Responsive } from '@zextras/carbonio-design-system';\nimport { find } from 'lodash';\nimport styled from 'styled-components';\nimport AppContextProvider from '../boot/app/app-context-provider';\nimport { useUtilityViews } from './utils';\nimport { useUtilityBarStore } from './store';\n\nconst Panel = styled(Container)<{ mode: string }>`\n\twidth: ${({ mode }): number => (mode !== 'closed' ? 256 : 48)}px;\n\tborder-radius: 0;\n\theight: 100%;\n\tposition: absolute;\n\tright: 0;\n\ttop: 0;\n\tbottom: 0;\n\ttransition: width 0.2s;\n\tborder-left: 1px solid ${({ theme }): string => theme.palette.gray2.regular};\n`;\nconst Spacer = styled.div<{ mode: string }>`\n\tposition: relative;\n\twidth: ${({ mode }): number => (mode === 'open' ? 256 : 48)}px;\n\theight: 100%;\n\ttransition: width 0.2s;\n`;\n\nexport const ShellUtilityPanel: FC = () => {\n\tconst { mode, setMode, current, setCurrent } = useUtilityBarStore();\n\tconst views = useUtilityViews();\n\tconst currentPanel = useMemo(() => find(views, (view) => view.id === current), [current, views]);\n\tuseEffect(() => {\n\t\tif (!(current && currentPanel)) {\n\t\t\tsetCurrent(views[0]?.id);\n\t\t}\n\t}, [current, currentPanel, setCurrent, views]);\n\treturn currentPanel ? (\n\t\t<Responsive mode=\"desktop\">\n\t\t\t<Spacer mode={mode}>\n\t\t\t\t<Panel mode={mode} mainAlignment=\"flex-start\">\n\t\t\t\t\t{currentPanel && (\n\t\t\t\t\t\t<AppContextProvider pkg={currentPanel?.id}>\n\t\t\t\t\t\t\t<currentPanel.component mode={mode} setMode={setMode} />\n\t\t\t\t\t\t</AppContextProvider>\n\t\t\t\t\t)}\n\t\t\t\t</Panel>\n\t\t\t</Spacer>\n\t\t</Responsive>\n\t) : null;\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\nimport create from 'zustand';\nimport { UtilityBarStore } from '../../types';\n\nexport const useUtilityBarStore = create<UtilityBarStore>((set) => ({\n\tmode: 'closed',\n\tcurrent: undefined,\n\tsecondaryBarState: true,\n\tsetMode: (mode): void =>\n\t\tset((s) => ({ mode, secondaryBarState: mode === 'open' ? false : s.secondaryBarState })),\n\tsetCurrent: (current): void => set({ current }),\n\tsetSecondaryBarState: (secondaryBarState: boolean): void => set({ secondaryBarState })\n}));\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { filter, intersection, omit } from 'lodash';\nimport { useMemo } from 'react';\nimport { AppRoute, PrimaryAccessoryView, SecondaryAccessoryView, UtilityView } from '../../types';\nimport { useCurrentRoute } from '../history/hooks';\nimport { useAppStore } from '../store/app';\n\nexport const checkList = (l1: Array<string>, l2?: Array<string>): boolean =>\n\tintersection(l1, l2).length > 0;\n\nexport const checkRoute = (\n\tview: UtilityView | PrimaryAccessoryView | SecondaryAccessoryView,\n\tactiveRoute?: AppRoute\n): boolean => {\n\tconst activeRouteValues = Object.values(omit(activeRoute, 'standalone') ?? {});\n\tif (view.blacklistRoutes) return !checkList(activeRouteValues, view.blacklistRoutes);\n\tif (view.whitelistRoutes) return checkList(activeRouteValues, view.whitelistRoutes);\n\treturn true;\n};\nexport const useUtilityViews = (): Array<UtilityView> => {\n\tconst utilityViews = useAppStore((s) => s.views.utilityBar);\n\n\tconst activeRoute = useCurrentRoute();\n\treturn useMemo(\n\t\t() => filter(utilityViews, (v) => checkRoute(v, activeRoute)),\n\t\t[activeRoute, utilityViews]\n\t);\n};\n","/*\n * SPDX-FileCopyrightText: 2022 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nexport const tagWorker = new Worker(new URL('./tag', import.meta.url));\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nexport const folderWorker = new Worker(new URL('./folder', import.meta.url));\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n/* eslint-disable @typescript-eslint/ban-types */\n\nimport { ComponentType, Dispatch, FC, SetStateAction } from 'react';\nimport { LinkProps } from 'react-router-dom';\nimport { TFunction } from 'react-i18next';\nimport { i18n } from 'i18next';\nimport {\n\tAppRoute,\n\tAppRouteDescriptor,\n\tBadgeInfo,\n\tBoardView,\n\tCarbonioModule,\n\tPrimaryAccessoryView,\n\tSearchView,\n\tSecondaryAccessoryView,\n\tSettingsView,\n\tUtilityView\n} from '../apps';\nimport { ActionFactory, AnyFunction, CombinedActionFactory, Action } from '../integrations';\nimport {\n\tAccountSettings,\n\tAccount,\n\tAccountRights,\n\tAccountRightName,\n\tAccountRightTarget,\n\tSoapFetch\n} from '../account';\nimport {\n\tMods,\n\tTagActionResponse,\n\tCreateTagResponse,\n\tSoapNotify,\n\tSoapRefresh,\n\tErrorSoapResponse\n} from '../network';\nimport { HistoryParams, ShellModes, AccordionFolder } from '../misc';\nimport { Tag, Tags } from '../tags';\nimport { Folder, Folders } from '../folder';\nimport { QueryChip } from '../search';\nimport { Board, BoardHooksContext } from '../boards';\nimport { INotificationManager } from '../notification';\n\nexport const getBridgedFunctions: () => {\n\tcreateModal: (...params: any[]) => void;\n\tcreateSnackbar: (...params: any[]) => void;\n\tgetHistory: () => History;\n};\nexport const editSettings: (mods: Mods) => Promise<any>;\nexport const ZIMBRA_STANDARD_COLORS: Array<{ zValue: number; hex: string; zLabel: string }>;\nexport const FOLDERS: {\n\t[name: string]: string;\n};\nexport const SHELL_APP_ID = 'carbonio-shell-ui';\nexport const SETTINGS_APP_ID = 'settings';\nexport const SEARCH_APP_ID = 'search';\nexport const ACTION_TYPES: {\n\t[name: string]: string;\n};\nexport const SHELL_MODES: Record<string, ShellModes>;\nexport const BASENAME: string;\n\nexport const IS_STANDALONE: boolean;\n\nexport const getIntegratedHook: (id: string) => [Function, boolean];\nexport const getIntegratedFunction: (id: string) => [Function, boolean];\nexport const getIntegratedComponent: (id: string) => [ComponentType<unknown>, boolean];\nexport const getActions: <T>(target: T, type: string) => Array<Action>;\nexport const getActionsFactory: (type: string) => <T>(target: T) => Array<Action>;\nexport const getAction: <T>(type: string, id: string, target?: T) => [Action | undefined, boolean];\nexport const getActionFactory: <T>(\n\ttype: string,\n\tid: string\n) => [ActionFactory<T> | undefined, boolean];\nexport const useIntegratedHook: (id: string) => [Function, boolean];\nexport const useIntegratedFunction: (id: string) => [Function, boolean];\nexport const useIntegratedComponent: (id: string) => [ComponentType<unknown>, boolean];\nexport const useActions: <T>(target: T, type: string) => Array<Action>;\nexport const useActionsFactory: <T>(type: string) => CombinedActionFactory<T>;\nexport const useAction: <T>(type: string, id: string, target?: T) => [Action | undefined, boolean];\nexport const useActionFactory: <T>(\n\ttype: string,\n\tid: string\n) => [ActionFactory<T> | undefined, boolean];\nexport const useApp: () => CarbonioModule;\nexport const getApp: () => CarbonioModule;\nexport const useAppContext: <T>() => T;\nexport const getAppContext: <T>() => T;\nexport const useUserAccount: () => Account;\nexport const useUserAccounts: () => Array<Account>;\nexport const useUserRights: () => AccountRights;\nexport const useUserRight: (right: AccountRightName) => Array<AccountRightTarget>;\nexport const getUserAccount: () => Account;\nexport const getUserAccounts: () => Array<Account>;\nexport const getUserRights: () => AccountRights;\nexport const getUserRight: (right: AccountRightName) => Array<AccountRightTarget>;\nexport const useTags: () => Tags;\nexport const getTags: () => Tags;\nexport const useTag: (id: string) => Tag;\nexport const getTag: (id: string) => Tag;\nexport const useFolder: (id: string) => BaseFolder | Folder | LinkFolder;\nexport const getFolder: (id: string) => BaseFolder | Folder | LinkFolder;\nexport const useFolders: () => Folders;\nexport const getFolders: () => Folders;\nexport const useRoot: (name: string) => Folder;\nexport const getRoot: (name: string) => Folder;\nexport const useRoots: () => Roots;\nexport const getRoots: () => Roots;\nexport const useRootByView: (view: string) => Folder;\nexport const getRootByView: (view: string) => Folder;\nexport const createTag: (tag: Omit<Tag, 'id'>) => Promise<CreateTagResponse>;\nexport const renameTag: (id: string, name: string) => Promise<TagActionResponse>;\nexport const deleteTag: (id: string) => Promise<TagActionResponse>;\nexport const changeTagColor: (id: string, color: number | string) => Promise<TagActionResponse>;\nexport const useUserSettings: () => AccountSettings;\nexport const useUserSetting: <T = void>(...path: Array<string>) => string | T;\nexport const getUserSettings: () => AccountSettings;\nexport const getUserSetting: <T = void>(...path: Array<string>) => string | T;\nexport const useNotify: () => Array<SoapNotify>;\nexport const useRefresh: () => SoapRefresh;\nexport const AppLink: FC<LinkProps>;\nexport const Spinner: FC;\n\nexport const useIsMobile: () => boolean;\nexport const soapFetch: SoapFetch;\nexport const xmlSoapFetch: SoapFetch;\nexport const report: (error: Error, hint?: unknown) => void;\nexport const setAppContext: <T>(obj: T) => void;\n\nexport const removeActions: (...ids: Array<string>) => void;\nexport const registerActions: (\n\t...items: Array<{ id: string; action: ActionFactory<unknown>; type: string }>\n) => void;\nexport const removeComponents: (...ids: Array<string>) => void;\nexport const registerComponents: (\n\t...items: Array<{ id: string; component: ComponentType }>\n) => void;\nexport const removeHooks: (...ids: Array<string>) => void;\nexport const registerHooks: (...items: Array<{ id: string; hook: AnyFunction }>) => void;\nexport const removeFunctions: (...ids: Array<string>) => void;\nexport const registerFunctions: (...items: Array<{ id: string; fn: AnyFunction }>) => void;\n// add route (id route primaryBar secondaryBar app)\nexport const addRoute: (routeData: Partial<AppRouteDescriptor>) => string;\nexport const setRouteVisibility: (id: string, visible: boolean) => void;\n// remove route (id | route)\nexport const removeRoute: (id: string) => void;\n//\n// update primaryBar\nexport const updatePrimaryBadge: (badge: Partial<BadgeInfo>, id: string) => void;\nexport const updateUtilityBadge: (badge: Partial<BadgeInfo>, id: string) => void;\n//\n// add board\nexport const addBoardView: (data: Object & Partial<BoardView>) => string;\n// remove board\nexport const removeBoardView: (id: string) => void;\n//\n// add settings\nexport const addSettingsView: (data: Partial<SettingsView>) => string;\n// remove settings\nexport const removeSettingsView: (id: string) => void;\n//\n// add search\nexport const addSearchView: (data: Partial<SearchView>) => string;\n// remove search\nexport const removeSearchView: (id: string) => void;\n//\n// add utility\nexport const addUtilityView: (data: Partial<UtilityView>) => string;\n// remove utility\nexport const removeUtilityView: (id: string) => void;\n//\n// add primaryAccessory\nexport const addPrimaryAccessoryView: (data: Partial<PrimaryAccessoryView>) => string;\n// remove primaryAccessory\nexport const removePrimaryAccessoryView: (id: string) => void;\n//\n// add secondaryAccessory\nexport const addSecondaryAccessoryView: (data: Partial<SecondaryAccessoryView>) => string;\n// remove secondaryAccessory\nexport const removeSecondaryAccessoryView: (id: string) => void;\nexport const usePushHistoryCallback: () => (params: HistoryParams) => void;\nexport const useReplaceHistoryCallback: () => (params: HistoryParams) => void;\nexport const useGoBackHistoryCallback: () => () => void;\nexport const pushHistory: (params: HistoryParams) => void;\nexport const replaceHistory: (params: HistoryParams) => void;\nexport const goBackHistory: () => void;\nexport const useCurrentRoute: () => AppRoute | undefined;\nexport const getCurrentRoute: () => AppRoute | undefined;\n\n// FOLDERS\n\n// ROOTS\n\n// ROOTS BY USER\nexport const useRootByUser: (userId: string) => Folder | SearchFolder | Record<string, never>;\nexport const getRootByUser: (userId: string) => Folder | SearchFolder | Record<string, never>;\n\n// SEARCHES\n\nexport const useSearchFolder: (id: string) => SearchFolder | undefined;\nexport const useSearchFolders: (id: string) => SearchFolder | undefined;\nexport const getSearchFolder: () => Searches;\nexport const getSearchFolders: () => Searches;\n\n// Accordion-ize\n\nexport const useFoldersByView: (view: string) => Array<Folder>;\n\nexport const useFoldersAccordionByView: (\n\tview: string,\n\tCustomComponent: ComponentType<{ folder: Folder }>,\n\titemProps?: (item: AccordionFolder) => Record<string, any>\n) => Array<AccordionFolder>;\n\n// NOTIFICATION\nexport const getNotificationManager: () => INotificationManager;\n\n// Run Search\nexport const runSearch: (query: Array<QueryChip>, module: string) => void;\n\nexport const useLocalStorage: <T>(key: string, initialValue: T) => [T, Dispatch<SetStateAction<T>>];\n\nexport const getI18n: () => i18n;\nexport const useI18n: () => i18n;\nexport const t: TFunction;\n\nexport const addBoard: <T = any>(\n\tboard: Omit<Board<T>, 'app' | 'icon' | 'id'> & { id?: string; icon?: string },\n\texpanded?: boolean\n) => Board;\nexport const closeBoard: (id: string) => void;\nexport const updateBoard: <T = any>(id: string, board: Partial<Board<T>>) => void;\nexport const updateBoardContext: <T = any>(id: string, context: T) => void;\nexport const getBoardById: <T>(id: string) => Board<T>;\nexport const getBoardContextById: <T>(id: string) => T;\nexport const useBoardContextById: <T>(id: string) => T;\nexport const useBoardById: <T>(id: string) => Board<T>;\nexport const minimizeBoards: () => void;\nexport const reopenBoards: () => void;\nexport const setCurrentBoard: (id: string) => void;\nexport const useBoardHooks: () => BoardHooksContext;\nexport const useBoard: <T>() => Board<T>;\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nexport * from './network';\nexport * from './exports';\nexport * from './account';\nexport * from './apps';\nexport * from './notification';\nexport * from './integrations';\nexport * from './theme';\nexport * from './search';\nexport * from './misc';\nexport * from './tags';\nexport * from './workers';\nexport * from './folder';\nexport * from './i18n';\nexport * from './boards';\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { Store } from '@reduxjs/toolkit';\nimport { To } from 'history';\nimport { ComponentType } from 'react';\nimport { CarbonioModule, PanelMode } from '../apps';\n\n// eslint-disable-next-line no-shadow\nexport enum JSNS {\n\tACCOUNT = 'urn:zimbraAccount',\n\tADMIN = 'urn:zimbraAdmin',\n\tMAIL = 'urn:zimbraMail',\n\tALL = 'urn:zimbra',\n\tSYNC = 'urn:zimbraSync'\n}\n\nexport type DRPropValues = 'auto' | 'enabled' | 'disabled';\n\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport type PackageDependentFunction = (app: string) => Function;\n// eslint-disable-next-line @typescript-eslint/ban-types\n\nexport type ContextBridgeState = {\n\tpackageDependentFunctions: Record<string, PackageDependentFunction>;\n\t// eslint-disable-next-line @typescript-eslint/ban-types\n\tfunctions: Record<string, Function>;\n\tadd: (content: Partial<Omit<ContextBridgeState, 'add'>>) => void;\n};\n\nexport type IShellWindow = Window & {\n\t__ZAPP_SHARED_LIBRARIES__: { [name: string]: any };\n\t__ZAPP_HMR_EXPORT__: { [pkgName: string]: (appClass: ComponentType) => void };\n\t// __ZAPP_HMR_HANDLERS__: { [pkgName: string]: (handlers: RequestHandlersList) => void };\n};\n\nexport type LoadedAppRuntime = AppInjections & {\n\tpkg: CarbonioModule;\n};\n\nexport type LoadedAppsCache = {\n\t[pkgName: string]: LoadedAppRuntime;\n};\n\nexport type AppInjections = {\n\tstore: Store<any>;\n};\n\nexport type HistoryParams =\n\t| {\n\t\t\tpath: To;\n\t\t\troute?: string;\n\t }\n\t| string;\nexport type UtilityBarStore = {\n\tmode: PanelMode;\n\tsetMode: (mode: PanelMode) => void;\n\tcurrent?: string;\n\tsetCurrent: (current: string) => void;\n\tsecondaryBarState: boolean;\n\tsetSecondaryBarState: (state: boolean) => void;\n};\n\nexport type AccountProps = {\n\taccountId?: string;\n\ttype?: string;\n\tid?: number;\n\temail?: string;\n\tlabel?: string;\n\tpersonaLabel?: string;\n\tidentityId?: string;\n};\n\nexport type IdentityProps = {\n\tid: string;\n\ttype: string;\n\tidentityId: string | number;\n\tfromAddress?: string;\n\tidentityName?: string;\n\tfromDisplay?: string;\n\trecoveryAccount?: string;\n\treplyToDisplay?: string;\n\treplyToAddress?: string;\n\treplyToEnabled?: string;\n\tsaveToSent?: string;\n\tsentMailFolder?: string;\n\twhenInFoldersEnabled?: string;\n\twhenSentToEnabled?: string;\n\twhenSentToAddresses?: string;\n};\n\nexport type CreateModalProps = {\n\tbackground: string;\n\tcentered: boolean;\n\tchildren: React.ReactElement;\n\tconfirmColor: string;\n\tconfirmLabel: string;\n\tcopyLabel: string;\n\tcustomFooter: React.ReactElement;\n\tdisablePortal: boolean;\n\tdismissLabel: string;\n\thideFooter: boolean;\n\tmaxHeight: string;\n\tonClose: () => void;\n\tonConfirm: () => void;\n\tonSecondaryAction: () => void;\n\toptionalFooter: React.ReactElement;\n\tsecondaryActionLabel: string;\n\tshowCloseIcon: boolean;\n\tsize: string;\n\ttitle: string;\n\ttype: string;\n\tzIndex: number;\n};\n\n// Custom metadata\ntype Meta<T extends Record<string, unknown>> = {\n\t// Section. Normally present. If absent this indicates that CustomMetadata info is present but there are no sections to report on.\n\tsection?: string;\n\t_attrs: T;\n};\n// Grants\ntype Grant = {\n\t// Rights - Some combination of (r)ead, (w)rite, (i)nsert, (d)elete, (a)dminister, workflow action (x), view (p)rivate, view (f)reebusy, (c)reate subfolder\n\tperm: string;\n\t/* The type of Grantee:\n\t\"usr\",\n\t\"grp\",\n\t\"dom\" (domain),\n\t\"cos\",\n\t\"all\" (all authenticated users),\n\t\"pub\" (public authenticated and unauthenticated access),\n\t\"guest\" (non-Zimbra email address and password),\n\t\"key\" (non-Zimbra email address and access key)\n\t*/\n\tgt: 'usr' | 'grp' | 'dom' | 'cos' | 'all' | 'guest' | 'key' | 'pub';\n\t// Grantee ID\n\tzid: string;\n\t// Time when this grant expires. For internal/guest grant: If this attribute is not specified, the expiry of the grant is derived from internalGrantExpiry/guestGrantExpiry of the ACL it is part of. If this attribute is specified (overridden), the expiry value can not be greater than the corresponding expiry value in the ACL. For public grant: If this attribute is not specified, defaults to the maximum allowed expiry for a public grant. If not specified in the response, defaults to 0. Value of 0 indicates that this grant never expires.\n\texpiry?: string;\n\t// Name or email address of the principal being granted rights. optional if {grantee-type} is \"all\"/\"guest\"/\"pub\". When specified in a request, this can be just the username portion of the address in the default domain.\n\td?: string;\n\t// Optional argument. password when {grantee-type} is \"guest\"\n\tpw?: string;\n\t// Optional argument. Access key when {grantee-type} is \"key\"\n\tkey?: string;\n};\nexport type SoapPolicy = {\n\t// Retention policy type\n\ttype?: 'user' | 'system';\n\tid?: string;\n\tname?: string;\n\tlifetime?: string;\n};\n\nexport type SoapRetentionPolicy = Array<{\n\tkeep: Array<{ policy: SoapPolicy }>;\n\tpurge: Array<{ policy: SoapPolicy }>;\n}>;\n\nexport type FolderView =\n\t| 'search folder'\n\t| 'tag'\n\t| 'conversation'\n\t| 'message'\n\t| 'contact'\n\t| 'document'\n\t| 'appointment'\n\t| 'virtual conversation'\n\t| 'remote folder'\n\t| 'wiki'\n\t| 'task'\n\t| 'chat';\nexport type BaseFolder = {\n\t// Folder ID\n\tid: string;\n\t// Item's UUID - a globally unique identifier\n\tuuid: string;\n\t// Name of folder; max length 128; whitespace is trimmed by server; Cannot contain ':', '\"', '/', or any character below 0x20\n\tname: string;\n\t// Absolute Folder path\n\tabsFolderPath?: string;\n\t// ID of parent folder (absent for root folder)\n\tl?: string;\n\t// UUID of parent folder (absent for root folder)\n\tluuid?: string;\n\t// Flags - checked in UI (#), exclude free/(b)usy info, IMAP subscribed (*), does not (i)nherit rights from parent, is a s(y)nc folder with external data source, sync is turned on(~), folder does n(o)t allow inferiors / children\n\tf?: string;\n\t// color numeric; range 0-127; defaults to 0 if not present; client can display only 0-7\n\tcolor?: string;\n\t// RGB color in format #rrggbb where r,g and b are hex digits\n\trgb?: string;\n\t// Number of unread messages in folder\n\tu?: number;\n\t// Number of unread messages with this tag, including those with the IMAP \\Deleted flag set\n\ti4u?: number;\n\t// (optional) Default type for the folder; used by web client to decide which view to use;\n\tview?: FolderView;\n\t// Revision\n\trev?: number;\n\t// Modified sequence\n\tms?: number;\n\t// Modified date in seconds\n\tmd?: number;\n\t// Number of non-subfolder items in folder\n\tn?: number;\n\t// Number of non-subfolder items in folder, including those with the IMAP \\Deleted flag set\n\ti4n?: number;\n\t// Total size of all of non-subfolder items in folder\n\ts?: number;\n\t// Imap modified sequence\n\ti4ms?: number;\n\t// IMAP UIDNEXT\n\ti4next?: number;\n\t// URL (RSS, iCal, etc.) this folder syncs its contents to\n\turl?: string;\n\tactivesyncdisabled: boolean;\n\t// Number of days for which web client would sync folder data for offline use\n\twebOfflineSyncDays?: number;\n\t// For remote folders, the access rights the authenticated user has on the folder - will contain the calculated (c)reate folder permission if the user has both (i)nsert and (r)ead access on the folder\n\tperm?: string;\n\t// recursive\n\trecursive: boolean;\n\t// URL to the folder in the REST interface for rest-enabled apps (such as notebook)\n\trest?: string;\n\t// whether this folder can be deleted\n\tdeletable: boolean;\n\t// custom metadata\n\tmeta?: Array<Meta>;\n\t// ACL for sharing\n\tacl?: { grant: Array<Grant> };\n\tretentionPolicy?: SoapRetentionPolicy;\n};\n\nexport type LinkFolderFields = {\n\t// Primary email address of the owner of the linked-to resource\n\towner?: string;\n\t// Zimbra ID (guid) of the owner of the linked-to resource\n\tzid?: string;\n\t// Item ID of the linked-to resource in the remote mailbox\n\trid?: string;\n\t// UUID of the linked-to resource in the remote mailbox\n\truuid?: string;\n\t// The name presently used for the item by the owner\n\toname?: string;\n\t// If set, client should display reminders for shared appointments/tasks\n\treminder: boolean;\n\t// If \"tr\" is true in the request, broken is set if this is a broken link\n\tbroken: boolean;\n};\nexport type SearchFolderFields = {\n\t// Query\n\tquery?: string;\n\t// Sort by\n\tsortBy?: SortBy;\n\t// Comma-separated list. Legal values in list are:\n\t// appointment|chat|contact|conversation|document|message|tag|task|wiki (default is \"conversation\")\n\ttypes?: string;\n};\n\nexport type SortBy =\n\t| 'dateDesc'\n\t| 'dateAsc'\n\t| 'idDesc'\n\t| 'idAsc'\n\t| 'subjDesc'\n\t| 'subjAsc'\n\t| 'nameDesc'\n\t| 'nameAsc'\n\t| 'durDesc'\n\t| 'durAsc'\n\t| 'none'\n\t| 'taskDueAsc'\n\t| 'taskDueDesc'\n\t| 'taskStatusAsc'\n\t| 'taskStatusDesc'\n\t| 'taskPercCompletedAsc'\n\t| 'taskPercCompletedDesc'\n\t| 'rcptAsc'\n\t| 'rcptDesc'\n\t| 'readAsc'\n\t| 'readDesc';\n\nexport type AccordionFolder = {\n\tid: string;\n\tlabel: string;\n\tfolder: Folder;\n\tCustomComponent: ComponentType<{ folder: Folder }>;\n\titems: Array<AccordionFolder>;\n};\n\nexport type TreeNode<T> = T & {\n\tid: string;\n\tchildren: TreeNode<T>[];\n\tparent?: TreeNode<T>;\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { AccountRights, ZimletProp } from '../account';\nimport { Tag } from '../tags';\n\nexport * from './soap';\n\nexport type ZimletPkgDescription = {\n\tzimlet: Array<{\n\t\tname: string;\n\t\tlabel: string;\n\t\tdescription: string;\n\t\tversion: string;\n\t\t/* Property related to Zextras */ zapp?: 'true';\n\t\t/* Property related to Zextras */ 'zapp-main'?: string;\n\t\t/* Property related to Zextras */ 'zapp-version'?: string;\n\t\t/* Property related to Zextras */ 'zapp-handlers'?: string;\n\t\t/* Property related to Zextras */ 'zapp-style'?: string;\n\t\t/* Property related to Zextras */ 'zapp-theme'?: string;\n\t\t/* Property related to Zextras */ 'zapp-serviceworker-extension'?: string;\n\t}>;\n\tzimletContext: Array<{\n\t\tbaseUrl: string;\n\t\tpresence: 'enabled';\n\t\tpriority: number;\n\t}>;\n};\n\nexport type GetInfoResponse = {\n\tname: string;\n\tid: string;\n\tattrs: {\n\t\t_attrs: {\n\t\t\tdisplayName: string;\n\t\t};\n\t};\n\tprefs: {\n\t\t_attrs: Record<string, string>;\n\t};\n\tsignatures: {\n\t\tsignature: Array<any>;\n\t};\n\tidentities: {\n\t\tidentity: Array<any>;\n\t};\n\tzimlets: {\n\t\tzimlet: Array<ZimletPkgDescription>;\n\t};\n\tprops: {\n\t\tprop: Array<ZimletProp>;\n\t};\n\tversion: string;\n\trights: AccountRights;\n};\n\nexport type PropsMods = Record<string, { app: string; value: unknown }>;\n\nexport type PermissionsMods = {\n\tfreeBusy: any;\n\tinviteRight: any;\n};\n\nexport type CreateIdentityProps = {\n\trequestId: number;\n\tzimbraPrefIdentityName: string | undefined;\n\tzimbraPrefFromDisplay: string | undefined;\n\tzimbraPrefFromAddress: string | undefined;\n\tzimbraPrefFromAddress: string | undefined;\n\tzimbraPrefFromAddressType: string | undefined;\n\tzimbraPrefReplyToEnabled: string | undefined;\n\tzimbraPrefReplyToDisplay: string | undefined;\n\tzimbraPrefReplyToAddress: string | undefined;\n\tzimbraPrefDefaultSignatureId: string | undefined;\n\tzimbraPrefForwardReplySignatureId: string | undefined;\n\tzimbraPrefWhenSentToEnabled: string | undefined;\n\tzimbraPrefWhenInFoldersEnabled: string | undefined;\n};\n\nexport type IdentityMods = {\n\tmodifyList?: Record<string, { id: string; prefs: Record<string, string | boolean> }>;\n\tdeleteList?: string[];\n\tcreateList?: { prefs: CreateIdentityProps }[];\n};\n\nexport type PrefsMods = Record<string, unknown>;\n\nexport type Mods = {\n\tprops?: PropsMods;\n\tprefs?: PrefsMods;\n\tpermissions?: PermissionsMods;\n\tidentity?: IdentityMods;\n};\n\nexport type Locale = {\n\tid: string;\n\tlocalName: string;\n\tname: string;\n};\nexport type AvailableLocalesResponse = {\n\tlocale: Array<Locale>;\n};\n\nexport type NetworkState = SoapContext & {\n\tnoOpTimeout?: Timeout;\n\tpollingInterval: number;\n\tseq: number;\n};\n\nexport type CreateTagRequest = {\n\ttag: Omit<Tag, id>;\n\t_jsns: string;\n};\n\nexport type CreateTagResponse = {\n\ttag: [Tag];\n};\n\nexport type TagActionRequest = {\n\t_jsns: string;\n\taction: {\n\t\top: 'rename' | 'color' | 'delete' | 'update';\n\t\tid: string;\n\t\tname?: string;\n\t\tcolor?: number;\n\t\trgb?: string;\n\t};\n};\nexport type TagActionResponse = {\n\taction: { op: string; id: string };\n\t_jsns: string;\n};\n","/*\n * SPDX-FileCopyrightText: 2021 Zextras <https://www.zextras.com>\n *\n * SPDX-License-Identifier: AGPL-3.0-only\n */\n\nimport { QueryChip } from './items';\n\nexport * from './items';\nexport type SearchState = {\n\tquery: Array<QueryChip>;\n\tmodule?: string;\n\tsearchDisabled: boolean;\n\ttooltip?: string;\n\tsetSearchDisabled: (searchDisabled: boolean) => void;\n\tupdateQuery: (query: Array<QueryChip> | ((q: Array<QueryChip>) => Array<QueryChip>)) => void;\n\tupdateModule: (module: string) => void;\n};\n\nexport enum ResultLabelType {\n\tNORMAL = 'normal',\n\tWARNING = 'warning',\n\tERROR = 'error'\n}\n\n// export type SelectLabelFactoryProps = {\n// \tselected: [{ label: string; value: string }];\n// \topen: boolean;\n// \tfocus: boolean;\n// \tdisabled: boolean;\n// };\n","export default __webpack_public_path__ + \"db1a38cf321d5b3025a31cd903b7d486.png\";","export default __webpack_public_path__ + \"20d012c938e8d0dcc703e4edc2714d23.mp3\";","var map = {\n\t\"./af\": \"./node_modules/moment/locale/af.js\",\n\t\"./af.js\": \"./node_modules/moment/locale/af.js\",\n\t\"./ar\": \"./node_modules/moment/locale/ar.js\",\n\t\"./ar-dz\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-dz.js\": \"./node_modules/moment/locale/ar-dz.js\",\n\t\"./ar-kw\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-kw.js\": \"./node_modules/moment/locale/ar-kw.js\",\n\t\"./ar-ly\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ly.js\": \"./node_modules/moment/locale/ar-ly.js\",\n\t\"./ar-ma\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-ma.js\": \"./node_modules/moment/locale/ar-ma.js\",\n\t\"./ar-sa\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-sa.js\": \"./node_modules/moment/locale/ar-sa.js\",\n\t\"./ar-tn\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar-tn.js\": \"./node_modules/moment/locale/ar-tn.js\",\n\t\"./ar.js\": \"./node_modules/moment/locale/ar.js\",\n\t\"./az\": \"./node_modules/moment/locale/az.js\",\n\t\"./az.js\": \"./node_modules/moment/locale/az.js\",\n\t\"./be\": \"./node_modules/moment/locale/be.js\",\n\t\"./be.js\": \"./node_modules/moment/locale/be.js\",\n\t\"./bg\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bg.js\": \"./node_modules/moment/locale/bg.js\",\n\t\"./bm\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bm.js\": \"./node_modules/moment/locale/bm.js\",\n\t\"./bn\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bn-bd\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn-bd.js\": \"./node_modules/moment/locale/bn-bd.js\",\n\t\"./bn.js\": \"./node_modules/moment/locale/bn.js\",\n\t\"./bo\": \"./node_modules/moment/locale/bo.js\",\n\t\"./bo.js\": \"./node_modules/moment/locale/bo.js\",\n\t\"./br\": \"./node_modules/moment/locale/br.js\",\n\t\"./br.js\": \"./node_modules/moment/locale/br.js\",\n\t\"./bs\": \"./node_modules/moment/locale/bs.js\",\n\t\"./bs.js\": \"./node_modules/moment/locale/bs.js\",\n\t\"./ca\": \"./node_modules/moment/locale/ca.js\",\n\t\"./ca.js\": \"./node_modules/moment/locale/ca.js\",\n\t\"./cs\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cs.js\": \"./node_modules/moment/locale/cs.js\",\n\t\"./cv\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cv.js\": \"./node_modules/moment/locale/cv.js\",\n\t\"./cy\": \"./node_modules/moment/locale/cy.js\",\n\t\"./cy.js\": \"./node_modules/moment/locale/cy.js\",\n\t\"./da\": \"./node_modules/moment/locale/da.js\",\n\t\"./da.js\": \"./node_modules/moment/locale/da.js\",\n\t\"./de\": \"./node_modules/moment/locale/de.js\",\n\t\"./de-at\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-at.js\": \"./node_modules/moment/locale/de-at.js\",\n\t\"./de-ch\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de-ch.js\": \"./node_modules/moment/locale/de-ch.js\",\n\t\"./de.js\": \"./node_modules/moment/locale/de.js\",\n\t\"./dv\": \"./node_modules/moment/locale/dv.js\",\n\t\"./dv.js\": \"./node_modules/moment/locale/dv.js\",\n\t\"./el\": \"./node_modules/moment/locale/el.js\",\n\t\"./el.js\": \"./node_modules/moment/locale/el.js\",\n\t\"./en-au\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-au.js\": \"./node_modules/moment/locale/en-au.js\",\n\t\"./en-ca\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-ca.js\": \"./node_modules/moment/locale/en-ca.js\",\n\t\"./en-gb\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-gb.js\": \"./node_modules/moment/locale/en-gb.js\",\n\t\"./en-ie\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-ie.js\": \"./node_modules/moment/locale/en-ie.js\",\n\t\"./en-il\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-il.js\": \"./node_modules/moment/locale/en-il.js\",\n\t\"./en-in\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-in.js\": \"./node_modules/moment/locale/en-in.js\",\n\t\"./en-nz\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-nz.js\": \"./node_modules/moment/locale/en-nz.js\",\n\t\"./en-sg\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./en-sg.js\": \"./node_modules/moment/locale/en-sg.js\",\n\t\"./eo\": \"./node_modules/moment/locale/eo.js\",\n\t\"./eo.js\": \"./node_modules/moment/locale/eo.js\",\n\t\"./es\": \"./node_modules/moment/locale/es.js\",\n\t\"./es-do\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-do.js\": \"./node_modules/moment/locale/es-do.js\",\n\t\"./es-mx\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-mx.js\": \"./node_modules/moment/locale/es-mx.js\",\n\t\"./es-us\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es-us.js\": \"./node_modules/moment/locale/es-us.js\",\n\t\"./es.js\": \"./node_modules/moment/locale/es.js\",\n\t\"./et\": \"./node_modules/moment/locale/et.js\",\n\t\"./et.js\": \"./node_modules/moment/locale/et.js\",\n\t\"./eu\": \"./node_modules/moment/locale/eu.js\",\n\t\"./eu.js\": \"./node_modules/moment/locale/eu.js\",\n\t\"./fa\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fa.js\": \"./node_modules/moment/locale/fa.js\",\n\t\"./fi\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fi.js\": \"./node_modules/moment/locale/fi.js\",\n\t\"./fil\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fil.js\": \"./node_modules/moment/locale/fil.js\",\n\t\"./fo\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fo.js\": \"./node_modules/moment/locale/fo.js\",\n\t\"./fr\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fr-ca\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ca.js\": \"./node_modules/moment/locale/fr-ca.js\",\n\t\"./fr-ch\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr-ch.js\": \"./node_modules/moment/locale/fr-ch.js\",\n\t\"./fr.js\": \"./node_modules/moment/locale/fr.js\",\n\t\"./fy\": \"./node_modules/moment/locale/fy.js\",\n\t\"./fy.js\": \"./node_modules/moment/locale/fy.js\",\n\t\"./ga\": \"./node_modules/moment/locale/ga.js\",\n\t\"./ga.js\": \"./node_modules/moment/locale/ga.js\",\n\t\"./gd\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gd.js\": \"./node_modules/moment/locale/gd.js\",\n\t\"./gl\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gl.js\": \"./node_modules/moment/locale/gl.js\",\n\t\"./gom-deva\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-deva.js\": \"./node_modules/moment/locale/gom-deva.js\",\n\t\"./gom-latn\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gom-latn.js\": \"./node_modules/moment/locale/gom-latn.js\",\n\t\"./gu\": \"./node_modules/moment/locale/gu.js\",\n\t\"./gu.js\": \"./node_modules/moment/locale/gu.js\",\n\t\"./he\": \"./node_modules/moment/locale/he.js\",\n\t\"./he.js\": \"./node_modules/moment/locale/he.js\",\n\t\"./hi\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hi.js\": \"./node_modules/moment/locale/hi.js\",\n\t\"./hr\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hr.js\": \"./node_modules/moment/locale/hr.js\",\n\t\"./hu\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hu.js\": \"./node_modules/moment/locale/hu.js\",\n\t\"./hy-am\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./hy-am.js\": \"./node_modules/moment/locale/hy-am.js\",\n\t\"./id\": \"./node_modules/moment/locale/id.js\",\n\t\"./id.js\": \"./node_modules/moment/locale/id.js\",\n\t\"./is\": \"./node_modules/moment/locale/is.js\",\n\t\"./is.js\": \"./node_modules/moment/locale/is.js\",\n\t\"./it\": \"./node_modules/moment/locale/it.js\",\n\t\"./it-ch\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it-ch.js\": \"./node_modules/moment/locale/it-ch.js\",\n\t\"./it.js\": \"./node_modules/moment/locale/it.js\",\n\t\"./ja\": \"./node_modules/moment/locale/ja.js\",\n\t\"./ja.js\": \"./node_modules/moment/locale/ja.js\",\n\t\"./jv\": \"./node_modules/moment/locale/jv.js\",\n\t\"./jv.js\": \"./node_modules/moment/locale/jv.js\",\n\t\"./ka\": \"./node_modules/moment/locale/ka.js\",\n\t\"./ka.js\": \"./node_modules/moment/locale/ka.js\",\n\t\"./kk\": \"./node_modules/moment/locale/kk.js\",\n\t\"./kk.js\": \"./node_modules/moment/locale/kk.js\",\n\t\"./km\": \"./node_modules/moment/locale/km.js\",\n\t\"./km.js\": \"./node_modules/moment/locale/km.js\",\n\t\"./kn\": \"./node_modules/moment/locale/kn.js\",\n\t\"./kn.js\": \"./node_modules/moment/locale/kn.js\",\n\t\"./ko\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ko.js\": \"./node_modules/moment/locale/ko.js\",\n\t\"./ku\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ku.js\": \"./node_modules/moment/locale/ku.js\",\n\t\"./ky\": \"./node_modules/moment/locale/ky.js\",\n\t\"./ky.js\": \"./node_modules/moment/locale/ky.js\",\n\t\"./lb\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lb.js\": \"./node_modules/moment/locale/lb.js\",\n\t\"./lo\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lo.js\": \"./node_modules/moment/locale/lo.js\",\n\t\"./lt\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lt.js\": \"./node_modules/moment/locale/lt.js\",\n\t\"./lv\": \"./node_modules/moment/locale/lv.js\",\n\t\"./lv.js\": \"./node_modules/moment/locale/lv.js\",\n\t\"./me\": \"./node_modules/moment/locale/me.js\",\n\t\"./me.js\": \"./node_modules/moment/locale/me.js\",\n\t\"./mi\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mi.js\": \"./node_modules/moment/locale/mi.js\",\n\t\"./mk\": \"./node_modules/moment/locale/mk.js\",\n\t\"./mk.js\": \"./node_modules/moment/locale/mk.js\",\n\t\"./ml\": \"./node_modules/moment/locale/ml.js\",\n\t\"./ml.js\": \"./node_modules/moment/locale/ml.js\",\n\t\"./mn\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mn.js\": \"./node_modules/moment/locale/mn.js\",\n\t\"./mr\": \"./node_modules/moment/locale/mr.js\",\n\t\"./mr.js\": \"./node_modules/moment/locale/mr.js\",\n\t\"./ms\": \"./node_modules/moment/locale/ms.js\",\n\t\"./ms-my\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms-my.js\": \"./node_modules/moment/locale/ms-my.js\",\n\t\"./ms.js\": \"./node_modules/moment/locale/ms.js\",\n\t\"./mt\": \"./node_modules/moment/locale/mt.js\",\n\t\"./mt.js\": \"./node_modules/moment/locale/mt.js\",\n\t\"./my\": \"./node_modules/moment/locale/my.js\",\n\t\"./my.js\": \"./node_modules/moment/locale/my.js\",\n\t\"./nb\": \"./node_modules/moment/locale/nb.js\",\n\t\"./nb.js\": \"./node_modules/moment/locale/nb.js\",\n\t\"./ne\": \"./node_modules/moment/locale/ne.js\",\n\t\"./ne.js\": \"./node_modules/moment/locale/ne.js\",\n\t\"./nl\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nl-be\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl-be.js\": \"./node_modules/moment/locale/nl-be.js\",\n\t\"./nl.js\": \"./node_modules/moment/locale/nl.js\",\n\t\"./nn\": \"./node_modules/moment/locale/nn.js\",\n\t\"./nn.js\": \"./node_modules/moment/locale/nn.js\",\n\t\"./oc-lnc\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./oc-lnc.js\": \"./node_modules/moment/locale/oc-lnc.js\",\n\t\"./pa-in\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pa-in.js\": \"./node_modules/moment/locale/pa-in.js\",\n\t\"./pl\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pl.js\": \"./node_modules/moment/locale/pl.js\",\n\t\"./pt\": \"./node_modules/moment/locale/pt.js\",\n\t\"./pt-br\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt-br.js\": \"./node_modules/moment/locale/pt-br.js\",\n\t\"./pt.js\": \"./node_modules/moment/locale/pt.js\",\n\t\"./ro\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ro.js\": \"./node_modules/moment/locale/ro.js\",\n\t\"./ru\": \"./node_modules/moment/locale/ru.js\",\n\t\"./ru.js\": \"./node_modules/moment/locale/ru.js\",\n\t\"./sd\": \"./node_modules/moment/locale/sd.js\",\n\t\"./sd.js\": \"./node_modules/moment/locale/sd.js\",\n\t\"./se\": \"./node_modules/moment/locale/se.js\",\n\t\"./se.js\": \"./node_modules/moment/locale/se.js\",\n\t\"./si\": \"./node_modules/moment/locale/si.js\",\n\t\"./si.js\": \"./node_modules/moment/locale/si.js\",\n\t\"./sk\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sk.js\": \"./node_modules/moment/locale/sk.js\",\n\t\"./sl\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sl.js\": \"./node_modules/moment/locale/sl.js\",\n\t\"./sq\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sq.js\": \"./node_modules/moment/locale/sq.js\",\n\t\"./sr\": \"./node_modules/moment/locale/sr.js\",\n\t\"./sr-cyrl\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr-cyrl.js\": \"./node_modules/moment/locale/sr-cyrl.js\",\n\t\"./sr.js\": \"./node_modules/moment/locale/sr.js\",\n\t\"./ss\": \"./node_modules/moment/locale/ss.js\",\n\t\"./ss.js\": \"./node_modules/moment/locale/ss.js\",\n\t\"./sv\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sv.js\": \"./node_modules/moment/locale/sv.js\",\n\t\"./sw\": \"./node_modules/moment/locale/sw.js\",\n\t\"./sw.js\": \"./node_modules/moment/locale/sw.js\",\n\t\"./ta\": \"./node_modules/moment/locale/ta.js\",\n\t\"./ta.js\": \"./node_modules/moment/locale/ta.js\",\n\t\"./te\": \"./node_modules/moment/locale/te.js\",\n\t\"./te.js\": \"./node_modules/moment/locale/te.js\",\n\t\"./tet\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tet.js\": \"./node_modules/moment/locale/tet.js\",\n\t\"./tg\": \"./node_modules/moment/locale/tg.js\",\n\t\"./tg.js\": \"./node_modules/moment/locale/tg.js\",\n\t\"./th\": \"./node_modules/moment/locale/th.js\",\n\t\"./th.js\": \"./node_modules/moment/locale/th.js\",\n\t\"./tk\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tk.js\": \"./node_modules/moment/locale/tk.js\",\n\t\"./tl-ph\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tl-ph.js\": \"./node_modules/moment/locale/tl-ph.js\",\n\t\"./tlh\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tlh.js\": \"./node_modules/moment/locale/tlh.js\",\n\t\"./tr\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tr.js\": \"./node_modules/moment/locale/tr.js\",\n\t\"./tzl\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzl.js\": \"./node_modules/moment/locale/tzl.js\",\n\t\"./tzm\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./tzm-latn\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm-latn.js\": \"./node_modules/moment/locale/tzm-latn.js\",\n\t\"./tzm.js\": \"./node_modules/moment/locale/tzm.js\",\n\t\"./ug-cn\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./ug-cn.js\": \"./node_modules/moment/locale/ug-cn.js\",\n\t\"./uk\": \"./node_modules/moment/locale/uk.js\",\n\t\"./uk.js\": \"./node_modules/moment/locale/uk.js\",\n\t\"./ur\": \"./node_modules/moment/locale/ur.js\",\n\t\"./ur.js\": \"./node_modules/moment/locale/ur.js\",\n\t\"./uz\": \"./node_modules/moment/locale/uz.js\",\n\t\"./uz-latn\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz-latn.js\": \"./node_modules/moment/locale/uz-latn.js\",\n\t\"./uz.js\": \"./node_modules/moment/locale/uz.js\",\n\t\"./vi\": \"./node_modules/moment/locale/vi.js\",\n\t\"./vi.js\": \"./node_modules/moment/locale/vi.js\",\n\t\"./x-pseudo\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./x-pseudo.js\": \"./node_modules/moment/locale/x-pseudo.js\",\n\t\"./yo\": \"./node_modules/moment/locale/yo.js\",\n\t\"./yo.js\": \"./node_modules/moment/locale/yo.js\",\n\t\"./zh-cn\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-cn.js\": \"./node_modules/moment/locale/zh-cn.js\",\n\t\"./zh-hk\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-hk.js\": \"./node_modules/moment/locale/zh-hk.js\",\n\t\"./zh-mo\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-mo.js\": \"./node_modules/moment/locale/zh-mo.js\",\n\t\"./zh-tw\": \"./node_modules/moment/locale/zh-tw.js\",\n\t\"./zh-tw.js\": \"./node_modules/moment/locale/zh-tw.js\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"./node_modules/moment/locale sync recursive ^\\\\.\\\\/.*$\";","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"names":["React","I18nextProvider","AppErrorCatcher","useI18n","AppContextProvider","pkg","children","i18n","useCallback","Catcher","onError","error","console","reduce","getApp","getAppContext","useApp","useAppContext","useContextBridge","getAction","getActions","getActionsFactory","getActionFactory","getIntegratedComponent","getIntegratedFunction","getIntegratedHook","getUserAccount","getUserAccounts","getUserSetting","getUserSettings","useUserAccount","useUserAccounts","useUserSetting","useUserSettings","useUserRight","useUserRights","getUserRight","getUserRights","useIsMobile","useLocalStorage","useAction","useActions","useActionsFactory","useActionFactory","useIntegratedComponent","useIntegratedFunction","useIntegratedHook","usePushHistoryCallback","useGoBackHistoryCallback","useReplaceHistoryCallback","getCurrentRoute","useCurrentRoute","replaceHistory","goBackHistory","pushHistory","getSoapFetch","getXmlSoapFetch","getFolder","getFolders","useFolder","useFolders","useRoot","getRoot","useRoots","getRoots","useSearchFolder","useSearchFolders","getSearchFolder","getSearchFolders","useFoldersAccordionByView","useFoldersByView","useRootByUser","getRootByUser","getTags","useTags","useNotify","useRefresh","changeTagColor","createTag","deleteTag","renameTag","runSearch","getI18n","getTFunction","addBoard","closeBoard","updateBoard","updateBoardContext","getBoardById","getBoardContextById","useBoardContextById","useBoardById","useBoard","minimizeBoards","reopenBoards","setCurrentBoard","useBoardHooks","getNotificationManager","getAppFunctions","name","t","soapFetch","xmlSoapFetch","getBridgedFunctions","getState","packageDependentFunctions","functions","acc","f","memo","Suspense","useMemo","isEmpty","map","useAppStore","Mounter","appId","AppLoaderMounter","entryPoints","s","entries","Comp","MemoComp","height","overflow","getEditSettingsForApp","normalizeRoute","normalizeSettingsView","normalizeSearchView","normalizeUtilityView","normalizePrimaryAccessoryView","normalizeSecondaryAccessoryView","normalizeBoardView","useIntegrationsStore","getAppSetters","appSetters","setters","integrations","updatePrimaryBadge","updateUtilityBadge","setAppContext","addRoute","route","setRouteVisibility","routeId","visible","removeRoute","addBoardView","data","removeBoardView","addSettingsView","removeSettingsView","addSearchView","removeSearchView","addUtilityView","removeUtilityView","addPrimaryAccessoryView","removePrimaryAccessoryView","addSecondaryAccessoryView","removeSecondaryAccessoryView","registerHooks","removeHooks","registerFunctions","removeFunctions","registerActions","removeActions","registerComponents","removeComponents","editSettings","produce","SearchAppView","SettingsAppView","SettingsSidebar","GeneralSettings","Feedback","DevBoard","DevBoardTrigger","SEARCH_APP_ID","SETTINGS_APP_ID","SHELL_APP_ID","AccountWrapper","settingsSubSections","settingsRoute","id","app","settingsPrimaryBar","component","position","label","badge","show","settingsSecondaryBar","settingsAppView","settingsGeneralView","icon","subSections","settingsAccountsView","searchRoute","searchPrimaryBar","searchAppView","feedbackBoardView","devModeBoardView","devModeTrigger","registerDefaultViews","setState","routes","views","primaryBar","secondaryBar","appView","settings","board","__CARBONIO_DEV__","push","primaryBarAccessories","forOwn","Spinner","AppLink","CONSTANTS","report","SettingsHeader","_scripts","_scriptId","loadApp","appPkg","Promise","_resolve","_reject","resolved","resolve","reject","e","window","__ZAPP_SHARED_LIBRARIES__","__ZAPP_HMR_EXPORT__","appComponent","state","info","script","document","createElement","setAttribute","version","js_entrypoint","body","appendChild","err","unloadApps","then","parentNode","removeChild","filter","injectSharedLibraries","useReporter","addI18n","loadApps","apps","appsToLoad","attrKey","log","setClients","allSettled","unloadAllApps","PropTypes","ReactDOM","Lodash","ReactRouterDom","Moment","ReactI18n","ReactRedux","ReduxJSToolkit","ZappUI","StyledComponents","Preview","wnd","react","lodash","moment","useI18nStore","BootstrapperContextProvider","defaultI18n","useContext","useEffect","BrowserRouter","Route","Switch","useHistory","useParams","SnackbarManagerContext","ModalManagerContext","ModalManager","SnackbarManager","useTranslation","useBridge","ShellView","BASENAME","IS_STANDALONE","NotificationPermissionChecker","ContextBridge","history","createSnackbar","createModal","getHistory","StandaloneListener","standalone","DefaultViewsRegister","BootstrapperRouter","init","ThemeProvider","Bootstrapper","useAccountStore","getInfo","setLocale","prefs","zimbraPrefLocale","attrs","zimbraLocale","Object","values","createContext","useState","UIThemeProvider","enable","disable","auto","setFetchMethod","darkReaderDynamicThemeFixes","fetch","ThemeCallbacksContext","addExtension","newExtension","setDarkReaderState","newState","themeSizes","size","theme","sizes","font","extrasmall","small","medium","large","paletteExtension","palette","shared","regular","hover","active","focus","disabled","linked","iconExtension","icons","Shared","ArrowCircleRight","Linked","ArrowCircleLeft","zimbraPrefFontSize","fonts","extensions","setExtensions","darkReaderState","sepia","aggregatedExtensions","val","ext","ZIMBRA_STANDARD_COLORS","zValue","hex","zLabel","FOLDERS","USER_ROOT","INBOX","TRASH","SPAM","SENT","DRAFTS","CONTACTS","TAGS","CONVERSATIONS","CALENDAR","ROOT","NOTEBOOK","AUTO_CONTACTS","IM_LOGS","TASKS","BRIEFCASE","ACCOUNTS_APP_ID","ACTION_TYPES","CONVERSATION","CONVERSATION_lIST","MESSAGE","MESSAGE_lIST","CONTACT","CONTACT_lIST","INVITE","INVITE_lIST","APPOINTMENT","APPOINTMENT_lIST","FOLDER","FOLDER_lIST","CALENDAR_lIST","NEW","ignoreImageAnalysis","invert","css","ignoreInlineStyle","disableStyleSheetsProxy","base","standaloneBase","location","pathname","startsWith","EMAIL_VALIDATION_REGEX","ROOT_NAME","DR_VALUES","FOLDER_VIEW","search_folder","tag","conversation","message","contact","appointment","virtual_conversation","remote_folder","wiki","task","chat","IconButton","url","title","find","replace","trim","useLocation","useSearchStore","useRoutes","getRoutes","r","module","parseParams","params","routeToApply","path","search","hash","cb","goBack","findIndex","forEach","isArray","mods","props","prop","key","value","pref","p","join","identity","modifyList","item","deleteList","createList","requestId","zimbraPrefIdentityName","zimbraPrefFromDisplay","zimbraPrefFromAddress","zimbraPrefReplyToEnabled","zimbraPrefReplyToDisplay","zimbraPrefReplyToAddress","zimbraPrefDefaultSignatureId","zimbraPrefForwardReplySignatureId","zimbraPrefWhenSentToEnabled","zimbraPrefWhenInFoldersEnabled","permissions","freeBusy","current","right","gt","zid","deny","d","inviteRight","u","email","propIndex","zimlet","_content","account","displayName","identities","tempResult","itemMods","indexAccount","keys","_index","_attrs","includes","i","CreateIdentityResponse","undefined","type","maxBy","goToLogin","userAgent","useNetworkStore","handleSync","noOp","pollingInterval","_jsns","limitToOneBlocked","wait","getAccount","otherAccount","by","getXmlAccount","getXmlSession","sessionId","session","normalizeContext","context","notify","deleted","split","handleResponse","api","res","noOpTimeout","usedQuota","clearTimeout","Body","Fault","code","Detail","Error","Code","authenticated","Reason","Text","Header","responseUsedQuota","refresh","mbx","modified","_context","seq","nextPollingInterval","waitDisallowed","setTimeout","zimbraVersion","method","headers","JSON","stringify","json","shellSoap","normalizeAccount","parsePollingInterval","pollingPref","zimbraPrefMailPollingInterval","pollingValue","parseInt","Number","isNaN","components","addApps","rights","assign","origin","logout","action","op","color","rgb","UAParser","os","browser","debounce","noop","defaultAudio","defaultIcon","PopupNotificationDefaultConfig","vibrate","AudioNotificationDefaultConfig","sound","NotificationDefaultConfig","showPopup","playSound","NotificationManager","Map","has","set","Audio","play","DEBOUNCE_TIME","result","get","config","defConfig","getAudioFileFunction","n","Notification","onClick","addEventListener","conf","instance","getInstance","warn","requestPermission","useReducer","ButtonOld","Button","Select","Container","Row","Icon","Severity","styled","feedback","useAppList","TextArea","textarea","gray5","text","gray4","TextContainer","ButtonContainer","TAContainer","primary","SubHeadingText","lineHeight","LabelContainer","gray2","emptyEvent","level","Info","release","extra","topic","user","reducer","payload","getTopics","ModuleLabelFactory","selected","open","all","length","alignSelf","_LabelFactory","showErr","topics","allApps","sentryDsn","appItems","display","acct","event","dispatch","setShowErr","limit","setLimit","onAppSelect","ev","onTopicSelect","onInputChange","target","style","scrollHeight","checkTopicSelect","keyCode","confirmHandler","feedbackId","disabledSend","LabelFactory","bottom","vertical","hint","reporter","eventId","clients","captureException","feedbacks","captureEvent","create","BrowserClient","Hub","dsn","maxValueLength","Dropdown","SelectorContainer","ModuleSelectorComponent","modules","updateModule","fullModule","m","setOpen","dropdownItems","click","left","MemoModuleSelector","ModuleSelector","activeRoute","query","searchDisabled","Chip","Divider","Padding","Redirect","ResultLabelType","useQuery","updateQuery","useDisableSearch","setSearchDisabled","getIconAndColor","labelType","WARNING","ERROR","ResultsHeader","NORMAL","setDisabled","resetQuery","labelTypeElem","horizontal","q","searchViews","view","useRef","ChipInput","Tooltip","OutlinedIconButton","StyledChipInput","StyledContainer","SearchBar","searchIsEnabled","setSearchIsEnabled","inputRef","storedValue","setStoredValue","inputTyped","setInputTyped","tooltip","isTyping","setIsTyping","options","setOptions","inputHasFocus","setInputHasFocus","inputState","setInputState","showClear","textContent","clearSearch","innerText","onSearch","currentQuery","ref","newInputState","hasAvatar","chip","c","qchip","appSuggestions","v","reverse","updateOptions","indexOf","slice","onQueryChange","newQuery","onInputType","suggestions","suggestion","triggerSearch","setTriggerSearch","containerRef","addFocus","removeFocus","searchCb","removeEventListener","disableOptions","placeholder","clearButtonPlaceholder","searchBtnTooltipLabel","onChipAdd","newChip","disableClearButton","cursor","overflowX","iconSize","paddingSize","isFunction","AccountsSettings","accountSettings","identitiesDefault","temp","index","toString","identityId","zimbraPrefIdentityId","fromAddress","identityName","fromDisplay","recoveryAccount","zimbraRecoveryAccount","replyToDisplay","replyToAddress","replyToEnabled","saveToSent","zimbraPrefSaveToSent","sentMailFolder","zimbraPrefSentMailFolder","whenInFoldersEnabled","whenSentToEnabled","whenSentToAddresses","zimbraPrefWhenSentToAddresses","pop","useSnackbar","lowerFirst","AccountsList","PrimaryAccountSettings","SettingsSentMessages","Delegates","PersonaSettings","PersonaUseSection","setMods","activeDelegateView","setActiveDelegateView","selectedIdentityId","setSelectedIdentityId","setIdentities","delegates","setDelegates","maxIdentities","zimbraIdentityMaxNumEntries","addMod","arg","modifyProp","prevState","prevRecord","newCreateList","newDeleteList","modifyCreateList","modifiedCreateList","createIdentities","updateIdentities","updatedIdentityKey","deleteIdentities","ace","resultReduced","splice","onSave","autoHideTimeout","hideButton","onCancel","isDirty","top","List","max","changeView","ListItem","createListrequestId","setCreateListrequestId","setCreateList","addNewPersona","newPersonaNextNumber","parseFloat","newPersonaName","zimbraPrefFromAddressType","setDeleteList","onConfirmDelete","newIdentities","onDelete","closeModal","onConfirm","confirmLabel","confirmColor","showCloseIcon","onClose","Radio","RadioGroup","items","activeValue","setActiveValue","width","justifyContent","newValue","Input","personaValue","setPersonaValue","personaLabel","onChange","Checkbox","whenSentToLabel","setWhenInFoldersEnabled","setWhenSentToEnabled","setWhenSentToAddresses","whenSentToAddressesLabel","onClickWhenSentToEnabled","isValidEmail","test","onChangeWhenSentToAddresses","emailValue","emailLabel","accountNameValue","setAccountNameValue","accountLabel","onChangeDisabled","blankItem","isExternalAccount","replyToEnabledValue","setReplyToEnabledValue","setReplyToAddress","dropdownOpen","setDropdownOpen","fromDisplayValue","setFromDisplayValue","setReplyToDisplay","fromAddressArray","setFromAddress","k","onClickReplyToEnabled","fromDisplayLabel","onChangeFromDisplayValue","fromAddressLabel","onChangeFromAddress","newVal","replyToEnabledLabel","replyToDisplayLabel","onChangePrefReplyToDisplay","replyToAddressLabel","replyToAddressArray","onChangeReplyToAddress","flexGrow","Styler","allDay","weight","DateTimePicker","momentLocalizer","Heading","changeDateEvent","getDateEvent","startOfDate","endOfDate","DateTimeSelect","sendAutoReply","dateDisabled","setDateDisabled","zimbraPrefOutOfOfficeFromDate","zimbraPrefOutOfOfficeUntilDate","sendAutoReplyTimePeriod","setSendAutoReplyTimePeriod","dateZimbraPrefOutOfOfficeFromDate","setZimbraPrefOutOfOfficeFromDate","dateZimbraPrefOutOfOfficeUntilDate","setZimbraPrefOutOfOfficeUntilDate","setAllDay","allDayDisabled","setAllDayDisabled","timeDisabled","setTimeDisabled","updatePrefs","toggleSendAutoReplyTimePeriod","maxWidth","Date","diff","add","valueOf","readOnly","subtract","FormSubSection","themeSubSection","AppearanceSettings","currentDRMSetting","defaultSelection","onSelectionChange","subSection","accountSubSection","Logout","sectionTitle","Badge","ThemeContext","versionsSubSection","ModuleVersionSettings","copyToClipboard","preventDefault","navigator","clipboard","writeText","filteredList","description","backgroundColor","success","gray6","ItemsExternalSenders","getExternalSendersPrefsData","ItemsOutOfOfficeStatus","getOutOfOfficeStatusPrefsData","ItemsSendAutoReplies","outOfOfficeSubSection","OutOfOfficeView","zimbraPrefOutOfOfficeReplyEnabled","setSendAutoReply","zimbraPrefOutOfOfficeReply","inputZimbraPrefOutOfOfficeReply","setInputZimbraPrefOutOfOfficeReply","zimbraPrefOutOfOfficeExternalReply","inputZimbraPrefOutOfOfficeExternalReply","setInputZimbraPrefOutOfOfficeExternalReply","createAppointmentDisabled","setCreateAppointmentDisabled","zimbraPrefOutOfOfficeExternalReplyEnabled","externalReplyInput","setExternalReplyInput","createAppointment","setCreateAppointment","externalSendersHandler","createAppointmentAsHandler","itemsSendAutoReplies","itemsExternalSenders","itemsOutOfOfficeStatus","defaultSendAutoreply","defaultOutOfOfficeStatus","selectedItemSendAutoReplies","Quota","quotaSubSection","UserQuota","mobileView","used","quota","userQuota","zimbraMailQuota","Math","round","defaultValue","fillBackground","Breadcrumbs","RouteLeavingGuard","useparam","crumbs","querySelector","scrollIntoView","ret","zimbraPrefOutOfOfficeSuppressExternalReply","zimbraPrefExternalSendersType","zimbraPrefOutOfOfficeFreeBusyStatus","date","utc","format","local","startOf","endOf","localeList","localName","timeZoneList","timezoneAndLanguageSubSection","searchPrefsSubSection","OutOfOfficeSettings","LanguageAndTimeZoneSettings","SearchSettingsView","Modal","LanguageAndTimeZone","locales","timezones","defaultLocale","localeId","locale","defaultTimeZone","timeZoneId","zimbraPrefTimeZoneId","timezone","reload","zimbraPrefIncludeSpamInSearch","searchInSpamFolder","setSearchInSpamFolder","zimbraPrefIncludeTrashInSearch","searchInTrashFolder","setSearchInTrashFolder","zimbraPrefIncludeSharedItemsInSearch","searchInSharedFolder","setSearchInSharedFolder","setMode","onClickSpam","onClickTrash","onClickShared","settingsViews","Accordion","expanded","disableHover","stopPropagation","collapsedItems","_BoardsRouterContainer","FirstAppRedirect","mainRoute","AppViewContainer","appViews","forwardRef","MiniBadge","BadgeWrap","showCount","padding","fontSize","count","closeAllBoards","expandBoards","onGoToPanel","reduceBoards","useBoardStore","TabsList","AppBoard","BoardContainerComp","div","minimized","Board","BoardHeader","BoardDetailContainer","BackButton","Actions","BoardContainer","boards","onReturnToApp","b","useLayoutEffect","useHiddenCount","AppBoardTab","tabContainerRef","hiddenTabsCount","recalculateHiddenTabs","tab","TabContainer","gray3","VerticalDivider","onRemove","Router","createMemoryHistory","BoardProvider","initialEntries","boardViews","windowHistory","unlisten","listen","l","Bubble","Collapser","groupBy","MultiButton","CreationButtonComponent","actions","primaryAction","a","group","byApp","secondaryActions","onOpen","MemoCreationButton","CreationButton","locationFull","truncateLocation","ShellContext","isMobile","initialValue","localStorage","getItem","parse","setValue","valueToStore","Function","setItem","useScreenMode","ShellContextProvider","screenMode","Responsive","Logo","ShellHeader","mobileNavIsOpen","onMobileMenuClick","searchEnabled","Collapse","SidebarComponent","secondary","ShellMobileNavComponent","menuTree","CustomComponent","zIndex","maxHeight","overflowY","ShellMobileNavMemo","ShellMobileNav","ShellPrimaryBar","ShellSecondaryBar","ShellNavigationBar","sortBy","checkRoute","ContainerWithDivider","ToggleBoardIcon","PrimaryBarElement","PrimaryBarAccessoryElement","ShellPrimaryBarComponent","primaryBarViews","setRoutes","primaryBarAccessoryViews","accessories","hidePrimaryBar","minHeight","MemoShellPrimaryBarComponent","useUtilityBarStore","SidebarContainer","sidebarIsOpen","ShellSecondaryBarComponent","isOpen","secondaryBarState","setIsOpen","setSecondaryBarState","onCollapserClick","secondaryBarViews","secondaryBarAccessoryViews","secondaryBarAccessories","MemoShellSecondaryBar","PreviewManager","ShellUtilityBar","ShellUtilityPanel","Background","DarkReaderListener","useLoginRedirection","allowUnauthenticated","auth","ShellComponent","hideShellHeader","mobileNavOpen","setMobileNavOpen","MemoShell","targets","normalizeSettings","signatures","lastNotificationTime","now","useApps","priority","getAppList","getApps","appContexts","getShell","shell","getRoute","useRoute","merge","omit","unionBy","unionWith","normalizeApp","filterById","STANDALONE_RESPONSE","commit","utilityBar","routeData","idx","bar","FallbackView","normalizeBadgeInfo","whitelistRoutes","blacklistRoutes","button","boardContext","boardHooksContext","callbacks","getBoardContext","getBoard","trimStart","uniqueId","content","addFunctions","useFolderStore","filterNodes","folderViewFilter","isRoot","mapNodes","sortFolders","folders","roots","userId","searches","sortFunction","itemProps","mapFunction","folder","filterFunction","recursionKey","deep","folderWorker","onmessage","hasId","getOriginalId","parts","toLowerCase","isTrash","oname","childrenSorted","instances","useLocale","getLocale","i18next","dropRight","Backend","createInstance","i18nInst","changeLanguage","use","returnEmptyString","compatibilityJSON","lng","fallbackLng","debug","interpolation","escapeValue","missingKeyHandler","_","__","backend","loadPath","BASE_PATH","newI18n","tinymce","Editor","FileInput","input","Composer","onEditorChange","onFileSelect","inline","baseAssetsUrl","rest","_onEditorChange","newContent","editor","getContent","defaultStyle","zimbraPrefHtmlEditorDefaultFontFamily","zimbraPrefHtmlEditorDefaultFontSize","zimbraPrefHtmlEditorDefaultFontColor","onFileClick","inlineLabel","files","content_css","setup","ui","registry","addMenuButton","callback","onAction","min_height","auto_focus","menubar","statusbar","branding","resize","fontsize_formats","object_resizing","style_formats","block","wrapper","merge_siblings","plugins","toolbar","quickbars_insert_toolbar","quickbars_selection_toolbar","contextmenu","toolbar_mode","forced_root_block","content_style","visualblocks_default_state","end_container_on_empty_block","compact","integration","hooks","Integration","C","factories","factory","combinedFactory","composer","hook","fn","ids","tagWorker","useTagStore","postMessage","tags","pick","Link","RRLink","to","_to","textDecoration","Prompt","when","lastLocationInitial","modalVisible","setModalVisible","lastLocation","setLastLocation","confirmedNavigation","setConfirmedNavigation","handleBlockedNavigation","nextLocation","useUtilityViews","UtilityBarItem","mode","setCurrent","accountItems","itemTextSize","Panel","Spacer","currentPanel","intersection","checkList","l1","l2","activeRouteValues","utilityViews","Worker","URL","import","meta","SHELL_MODES","useTag","getTag","useRootByView","getRootByView","JSNS"],"sourceRoot":""}
|