@social-mail/social-mail-client 1.2.3 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/admin/AdminAppIndex.pack.js +771 -24
  2. package/dist/admin/AdminAppIndex.pack.js.map +1 -1
  3. package/dist/admin/AdminAppIndex.pack.min.js +143 -17
  4. package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
  5. package/dist/common/controls/audio/AudioRecorder.d.ts +10 -0
  6. package/dist/common/controls/audio/AudioRecorder.d.ts.map +1 -0
  7. package/dist/common/controls/audio/AudioRecorder.js +116 -0
  8. package/dist/common/controls/audio/AudioRecorder.js.map +1 -0
  9. package/dist/common/controls/audio/WebRTCService.d.ts +16 -0
  10. package/dist/common/controls/audio/WebRTCService.d.ts.map +1 -0
  11. package/dist/common/controls/audio/WebRTCService.js +61 -0
  12. package/dist/common/controls/audio/WebRTCService.js.map +1 -0
  13. package/dist/common/controls/buttons/RoundButton.d.ts +7 -0
  14. package/dist/common/controls/buttons/RoundButton.d.ts.map +1 -0
  15. package/dist/common/controls/buttons/RoundButton.js +51 -0
  16. package/dist/common/controls/buttons/RoundButton.js.map +1 -0
  17. package/dist/style/GlobalStyle.js +13 -12
  18. package/dist/style/GlobalStyle.js.map +1 -1
  19. package/dist/tsconfig.tsbuildinfo +1 -1
  20. package/dist/web/AppIndex.pack.js +771 -24
  21. package/dist/web/AppIndex.pack.js.map +1 -1
  22. package/dist/web/AppIndex.pack.min.js +143 -17
  23. package/dist/web/AppIndex.pack.min.js.map +1 -1
  24. package/dist/web/page/mails/ConversationPage.d.ts +1 -0
  25. package/dist/web/page/mails/ConversationPage.d.ts.map +1 -1
  26. package/dist/web/page/mails/ConversationPage.js +11 -1
  27. package/dist/web/page/mails/ConversationPage.js.map +1 -1
  28. package/dist/web/page/mails/MiniComposeBox.d.ts +10 -3
  29. package/dist/web/page/mails/MiniComposeBox.d.ts.map +1 -1
  30. package/dist/web/page/mails/MiniComposeBox.js +102 -7
  31. package/dist/web/page/mails/MiniComposeBox.js.map +1 -1
  32. package/dist/web/page/mails/service/ConversationService.d.ts +3 -1
  33. package/dist/web/page/mails/service/ConversationService.d.ts.map +1 -1
  34. package/dist/web/page/mails/service/ConversationService.js +62 -3
  35. package/dist/web/page/mails/service/ConversationService.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/common/controls/audio/AudioRecorder.tsx +102 -0
  38. package/src/common/controls/audio/WebRTCService.ts +61 -0
  39. package/src/common/controls/buttons/RoundButton.tsx +38 -0
  40. package/src/style/GlobalStyle.ts +13 -12
  41. package/src/web/page/mails/ConversationPage.tsx +12 -1
  42. package/src/web/page/mails/MiniComposeBox.tsx +75 -6
  43. package/src/web/page/mails/service/ConversationService.tsx +53 -1
@@ -1985,7 +1985,7 @@ const UMD = new UMDClass();
1985
1985
 
1986
1986
  AmdLoader.instance.register(
1987
1987
  ["@social-mail/social-mail-client","@web-atoms/core","reflect-metadata","@web-atoms/web-controls","@web-atoms/date-time","@web-atoms/entity","@web-atoms/email-dom","@web-atoms/data-styles"],
1988
- ["@social-mail/social-mail-client/dist/web/AppIndex","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/ExpressionParser","@web-atoms/core/dist/core/types","reflect-metadata","@web-atoms/core/dist/core/AtomMap","@web-atoms/core/dist/Pack","@web-atoms/web-controls/dist/desktop-app/MobileDesktopApp","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/AtomLoader","@web-atoms/core/dist/services/JsonService","@web-atoms/core/dist/core/StringHelper","@web-atoms/core/dist/di/RegisterSingleton","@web-atoms/core/dist/di/Register","@web-atoms/core/dist/di/ServiceCollection","@web-atoms/core/dist/di/TypeKey","@web-atoms/date-time/dist/DateTime","@web-atoms/date-time/dist/TimeSpan","@web-atoms/core/dist/services/ReferenceService","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/core/AtomUri","@web-atoms/core/dist/web/core/AtomUI","@web-atoms/core/dist/core/Command","@web-atoms/core/dist/core/EventScope","@web-atoms/core/dist/core/Route","@web-atoms/core/dist/core/InheritedProperty","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/sleep","@web-atoms/core/dist/services/NavigationService","@web-atoms/core/dist/core/AtomComponent","@web-atoms/core/dist/App","@web-atoms/core/dist/core/AtomDispatcher","@web-atoms/core/dist/di/ServiceProvider","@web-atoms/core/dist/core/TransientDisposable","@web-atoms/core/dist/di/Inject","@web-atoms/core/dist/services/BusyIndicatorService","@web-atoms/core/dist/core/AtomDisposableList","@web-atoms/core/dist/core/AtomWatcher","@web-atoms/core/dist/core/Hacks","@web-atoms/core/dist/core/PropertyMap","@web-atoms/core/dist/core/FormattedString","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/WebImage","@web-atoms/core/dist/web/styles/AtomStyle","@web-atoms/core/dist/web/styles/AtomStyleSheet","@web-atoms/core/dist/web/services/PopupService","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/services/PopupWindow","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/desktop-app/DesktopApp","@social-mail/social-mail-client/dist/web/commands/AppCommands","@social-mail/social-mail-client/dist/web/page/home/HomePage","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxListPage","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/core/dist/core/Colors","@web-atoms/core/dist/core/WatchProperty","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/styles/inline-popup-style","@web-atoms/web-controls/dist/basic/MergeNode","@web-atoms/web-controls/dist/basic/ItemPath","@web-atoms/web-controls/dist/basic/styles/ui-display-none-style","@web-atoms/web-controls/dist/basic/styles/popup-style","@web-atoms/web-controls/dist/basic/styles/suggestion-popup","@web-atoms/web-controls/dist/basic/styles/repeater-style","@web-atoms/web-controls/dist/DataAttributes","@social-mail/social-mail-client/dist/common/controls/repeater/InfiniteRepeater","@social-mail/social-mail-client/dist/common/pages/mailboxes/services/MailboxService","@web-atoms/core/dist/di/DITransient","@social-mail/social-mail-client/dist/services/EntityService","@web-atoms/entity/dist/services/BaseEntityService","@web-atoms/entity/dist/models/Cloner","@web-atoms/entity/dist/models/cloneSource","@web-atoms/entity/dist/models/IEntityModel","@web-atoms/entity/dist/services/HttpSession","@web-atoms/core/dist/services/http/JsonError","@web-atoms/entity/dist/models/TaskManager","@web-atoms/entity/dist/models/Queue","@web-atoms/entity/dist/services/mergeProperties","@web-atoms/entity/dist/services/Query","@web-atoms/entity/dist/services/StringHelper","@web-atoms/entity/dist/services/resolve","@social-mail/social-mail-client/dist/services/BusyProgress","@social-mail/social-mail-client/dist/model/model","@social-mail/social-mail-client/dist/common/Sql","@social-mail/social-mail-client/dist/common/SocialMailApp","@web-atoms/core/dist/view-model/Action","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxEditorPage","@web-atoms/web-controls/dist/basic/Form","@social-mail/social-mail-client/dist/common/controls/form/RequiredFormField","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/styles/form-field-style","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/basic/styles/password-box-style","@web-atoms/web-controls/dist/basic/ComboBox","@social-mail/social-mail-client/dist/common/controls/buttons/IconButton","@social-mail/social-mail-client/dist/admin/pages/users/ChooseUserPage","@social-mail/social-mail-client/dist/admin/pages/users/services/AdminUserService","@web-atoms/web-controls/dist/basic/Checkbox","@web-atoms/web-controls/dist/basic/styles/checkbox-style","@social-mail/social-mail-client/dist/common/NumberFormats","@social-mail/social-mail-client/dist/common/commands/CommonCommands","@social-mail/social-mail-client/dist/web/page/mails/MailboxContacts","@social-mail/social-mail-client/dist/web/page/mails/service/MailService","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@social-mail/social-mail-client/dist/web/page/mails/ConversationPage","@social-mail/social-mail-client/dist/web/page/mails/service/ConversationService","@web-atoms/email-dom/dist/DomToString","@web-atoms/email-dom/dist/dom/StyleHelper","@web-atoms/email-dom/dist/style/mergeStyle","@social-mail/social-mail-client/dist/common/events/CommonEvents","@web-atoms/web-controls/dist/basic/InlinePopupControl","@social-mail/social-mail-client/dist/web/page/mails/ComposeMailPage","@social-mail/social-mail-client/dist/common/controls/html/InlineHtmlEditorWithToolbar","@web-atoms/web-controls/dist/html-editor/InlineHtmlEditor","@web-atoms/data-styles/data-styles","@web-atoms/web-controls/dist/html-editor/commands/AddImage","@web-atoms/web-controls/dist/html-editor/commands/CommandButton","@web-atoms/web-controls/dist/html-editor/commands/HtmlCommands","@web-atoms/web-controls/dist/html-editor/commands/Toolbar","@web-atoms/web-controls/dist/html-editor/commands/Bold","@web-atoms/web-controls/dist/html-editor/commands/Command","@web-atoms/web-controls/dist/html-editor/commands/Italic","@web-atoms/web-controls/dist/html-editor/commands/Underline","@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough","@web-atoms/web-controls/dist/html-editor/commands/Align","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/styles/popup-button-style","@web-atoms/web-controls/dist/html-editor/commands/HorizontalRule","@web-atoms/web-controls/dist/html-editor/commands/Separator","@web-atoms/web-controls/dist/html-editor/commands/Headings","@web-atoms/web-controls/dist/html-editor/commands/ChangeColor","@web-atoms/web-controls/dist/html-editor/commands/ChangeFont","@web-atoms/web-controls/dist/html-editor/commands/ChangeFontSize","@web-atoms/web-controls/dist/html-editor/commands/NumberedList","@web-atoms/web-controls/dist/html-editor/commands/UnorderedList","@web-atoms/web-controls/dist/html-editor/commands/IndentLess","@web-atoms/web-controls/dist/html-editor/commands/IndentMore","@web-atoms/web-controls/dist/html-editor/commands/AddLink","@web-atoms/core/dist/web/controls/AtomToggleButtonBar","@web-atoms/core/dist/web/styles/AtomToggleButtonBarStyle","@web-atoms/core/dist/web/styles/AtomListBoxStyle","@web-atoms/core/dist/web/controls/AtomListBox","@web-atoms/core/dist/web/controls/AtomItemsControl","@web-atoms/core/dist/core/AtomEnumerator","@web-atoms/core/dist/core/AtomList","@web-atoms/web-controls/dist/html-editor/commands/Unlink","@web-atoms/web-controls/dist/html-editor/commands/RemoveFormat","@web-atoms/web-controls/dist/html-editor/commands/Source","@web-atoms/web-controls/dist/basic/UploadEvent","@social-mail/social-mail-client/dist/services/files/LocalFileService","@web-atoms/web-controls/dist/basic/TitleEditor","@web-atoms/web-controls/dist/basic/styles/title-editor-style","@social-mail/social-mail-client/dist/common/controls/email-recipients/EmailRecipientChips","@web-atoms/web-controls/dist/basic/AtomChips","@web-atoms/web-controls/dist/basic/Chip","@web-atoms/web-controls/dist/basic/styles/chip-style","@web-atoms/web-controls/dist/basic/styles/chips-style","@web-atoms/web-controls/dist/basic/styles/item-suggestion-style","@social-mail/social-mail-client/dist/services/email-addresses/EmailAddressService","@social-mail/social-mail-client/dist/common/cache/CacheTTL","@social-mail/social-mail-client/dist/web/page/templates/social/SocialTemplate","@social-mail/social-mail-client/dist/services/Emoji","@social-mail/social-mail-client/dist/services/socket/sockets","@web-atoms/web-controls/dist/basic/LimitedText","@social-mail/social-mail-client/dist/common/date/DateFormats","@social-mail/social-mail-client/dist/common/pages/logs/LogsPage","@social-mail/social-mail-client/dist/common/pages/logs/services/AppLogService","@social-mail/social-mail-client/dist/web/page/mails/detail/MailDetailPage","@social-mail/social-mail-client/dist/common/controls/file-preview/FilePreview","@social-mail/social-mail-client/dist/web/page/mails/MiniComposeBox","@social-mail/social-mail-client/dist/web/page/mails/ChooseMailboxPage","@social-mail/social-mail-client/dist/common/pages/folders/ChooseTemplatePage","@social-mail/social-mail-client/dist/web/page/files/service/CloudFileService","@web-atoms/core/dist/services/FetchBuilder","@social-mail/social-mail-client/dist/common/controls/tree/TreeView","@social-mail/social-mail-client/dist/services/mime-service/MimeMessage","@social-mail/social-mail-client/dist/services/mime-service/MimeNode","@social-mail/social-mail-client/dist/common/QueryIterator","@social-mail/social-mail-client/dist/services/mime-service/AttachmentFile","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentType","@social-mail/social-mail-client/dist/services/mime-service/parsePairs","@social-mail/social-mail-client/dist/services/mime-service/tokenizer","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentDisposition","@social-mail/social-mail-client/dist/services/mime-service/encoder/word-encoding","@social-mail/social-mail-client/dist/services/mime-service/encoder/RawBuffer","@social-mail/social-mail-client/dist/services/mime-service/encoder/base64-to-blob","@social-mail/social-mail-client/dist/services/mime-service/encoder/quoted-printable","@social-mail/social-mail-client/dist/services/mime-service/stream/LineStream","@social-mail/social-mail-client/dist/services/mime-service/stream/TextWriter","@web-atoms/web-controls/dist/basic/Resizable","@web-atoms/web-controls/dist/basic/ToggleButtonBar","@web-atoms/web-controls/dist/basic/styles/toggle-button-bar-style","@social-mail/social-mail-client/dist/web/page/channels/detail/ChannelDetailPage","@social-mail/social-mail-client/dist/web/page/channels/subscribers/ChannelSubscribersPage","@social-mail/social-mail-client/dist/web/page/channels/services/ChannelService","@social-mail/social-mail-client/dist/web/page/channels/subscribers/add/AddSubscriberPage","@social-mail/social-mail-client/dist/web/page/channels/subscribers/rights/UpdateRightsPage","@social-mail/social-mail-client/dist/common/pages/drives/DriveListPage","@social-mail/social-mail-client/dist/common/pages/websites/manage/ManageWebSitePage","@social-mail/social-mail-client/dist/services/websites/WebSiteService","@social-mail/social-mail-client/dist/common/controls/collection-editor/CollectionEditor","@web-atoms/web-controls/dist/basic/Expander","@web-atoms/web-controls/dist/basic/styles/expander-style","@social-mail/social-mail-client/dist/common/pages/websites/studio/WebSiteStudioPage","@social-mail/social-mail-client/dist/web/page/files/shares/EditSharesPage","@social-mail/social-mail-client/dist/services/files/FileShareService","@social-mail/social-mail-client/dist/web/page/files/shares/AddSharePage","@web-atoms/web-controls/dist/basic/Switch","@web-atoms/web-controls/dist/basic/styles/switch-style","@social-mail/social-mail-client/dist/common/controls/drop-downs/user/UserDropDown","@web-atoms/web-controls/dist/basic/DropDown","@web-atoms/web-controls/dist/basic/styles/drop-down-style","@web-atoms/web-controls/dist/basic/DateField","@web-atoms/web-controls/dist/basic/Calendar","@web-atoms/web-controls/dist/basic/Select","@web-atoms/web-controls/dist/basic/styles/calendar-style","@web-atoms/web-controls/dist/basic/TimeEditor","@web-atoms/web-controls/dist/basic/styles/time-editor-style","@web-atoms/web-controls/dist/basic/styles/date-field-style","@social-mail/social-mail-client/dist/web/page/templates/EditTemplatePage","@social-mail/social-mail-client/dist/common/pages/websites/templates/ChooseWebSiteTemplatePage","@social-mail/social-mail-client/dist/common/controls/tree/FileTreeView","@social-mail/social-mail-client/dist/site-editor/editor/WebSitePageEditor","@social-mail/social-mail-client/dist/site-editor/editor/HtmlPageEditor","@social-mail/social-mail-client/dist/site-editor/blocks/ImageBlock","@social-mail/social-mail-client/dist/site-editor/blocks/Block","@social-mail/social-mail-client/dist/site-editor/drag-drop/DragDropHelper","@social-mail/social-mail-client/dist/site-editor/commands/CodeCommand","@social-mail/social-mail-client/dist/site-editor/commands/EditorCommand","@social-mail/social-mail-client/dist/site-editor/toolbars/UndoRedoToolbar","@social-mail/social-mail-client/dist/site-editor/toolbars/EditorToolbar","@social-mail/social-mail-client/dist/site-editor/blocks/WrapGrid","@social-mail/social-mail-client/dist/site-editor/properties/Properties","@social-mail/social-mail-client/dist/site-editor/properties/groups/LayoutEditor","@social-mail/social-mail-client/dist/site-editor/properties/controls/PropertyEditor","@social-mail/social-mail-client/dist/site-editor/styler/StylerSet","@social-mail/social-mail-client/dist/site-editor/styler/Styler","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerBorder","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/display","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/flex/flex","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/items-position/itemsPosition","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/layout","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerPosition","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerSizes","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerSpace","@social-mail/social-mail-client/dist/site-editor/styler/properties/text/stylerText","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerBackground","@social-mail/social-mail-client/dist/site-editor/properties/groups/TextPropertyEditor","@social-mail/social-mail-client/dist/site-editor/properties/controls/SizeEditorControl","@social-mail/social-mail-client/dist/site-editor/properties/groups/BorderGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/SizeGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/SpaceGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/PositionGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/BackgroundGroupEditor","@social-mail/social-mail-client/dist/site-editor/editor/SelectedElement","@social-mail/social-mail-client/dist/web/page/files/media/ChooseMediaPage","@social-mail/social-mail-client/dist/common/controls/drag-drop/FilesDragDrop","@social-mail/social-mail-client/dist/common/pages/user/change-password/ChangePasswordPage","@social-mail/social-mail-client/dist/common/pages/user/services/UserService","@social-mail/social-mail-client/dist/common/controls/password/PasswordStrength","@social-mail/social-mail-client/dist/common/validators/Validators","@social-mail/social-mail-client/dist/common/pages/user/multi-factor/MultiFactorSetupPage","@social-mail/social-mail-client/dist/common/pages/websites/list/WebSiteListPage","@social-mail/social-mail-client/dist/common/pages/websites/edit/WebSiteFolderEditor","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage","@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage","@social-mail/social-mail-client/dist/common/icons/Icons","@social-mail/social-mail-client/dist/web/page/files/FolderPage","@social-mail/social-mail-client/dist/web/page/files/preview/image/PreviewImage","@web-atoms/web-controls/dist/basic/PinchZoomView","@web-atoms/web-controls/dist/basic/styles/pinch-zoom-view-style","@social-mail/social-mail-client/dist/web/page/files/preview/document/PreviewDocument","@social-mail/social-mail-client/dist/web/page/files/preview/media/PreviewMedia","@web-atoms/web-controls/dist/player/AtomVideoPlayer","@social-mail/social-mail-client/dist/services/FileTypes","@social-mail/social-mail-client/dist/style/GlobalStyle","@social-mail/social-mail-client/dist/style/OverrideAppStyle","@social-mail/social-mail-client/dist/services/LoginService","@social-mail/social-mail-client/dist/common/pages/user/login/LoginPage","@social-mail/social-mail-client/dist/web/drawer/AppDrawer","@social-mail/social-mail-client/dist/common/controls/menu/MenuItem","@social-mail/social-mail-client/dist/common/controls/ModuleInfo","@social-mail/social-mail-client/dist/services/WebPushService","@web-atoms/core/dist/web/WebApp","@web-atoms/core/dist/core/AtomOnce","@web-atoms/core/dist/web/services/WebBusyIndicatorService","@web-atoms/core/dist/web/styles/StyleBuilder","@web-atoms/core/dist/web/services/WindowService","@web-atoms/core/dist/Atom","@web-atoms/core/dist/core/FormattedError","@web-atoms/core/dist/view-model/AtomWindowViewModel","@web-atoms/core/dist/view-model/AtomViewModel","@web-atoms/core/dist/view-model/baseTypes","@web-atoms/core/dist/web/controls/AtomAlertWindow","@web-atoms/core/dist/web/styles/AtomAlertWindowStyle","@web-atoms/core/dist/web/styles/AtomWindowStyle","@web-atoms/core/src/web/images/close-button-hover.svg","@web-atoms/core/dist/web/controls/AtomWindow","@web-atoms/core/dist/web/controls/AtomTemplate","@web-atoms/core/dist/web/controls/AtomNotification","@web-atoms/core/dist/web/styles/AtomNotificationStyle","@web-atoms/core/dist/web/styles/AtomPopupStyle","@web-atoms/core/dist/web/services/NotificationPopup","@web-atoms/core/dist/web/styles/AtomTheme"]);
1988
+ ["@social-mail/social-mail-client/dist/web/AppIndex","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/ExpressionParser","@web-atoms/core/dist/core/types","reflect-metadata","@web-atoms/core/dist/core/AtomMap","@web-atoms/core/dist/Pack","@web-atoms/web-controls/dist/desktop-app/MobileDesktopApp","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/AtomLoader","@web-atoms/core/dist/services/JsonService","@web-atoms/core/dist/core/StringHelper","@web-atoms/core/dist/di/RegisterSingleton","@web-atoms/core/dist/di/Register","@web-atoms/core/dist/di/ServiceCollection","@web-atoms/core/dist/di/TypeKey","@web-atoms/date-time/dist/DateTime","@web-atoms/date-time/dist/TimeSpan","@web-atoms/core/dist/services/ReferenceService","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/core/AtomUri","@web-atoms/core/dist/web/core/AtomUI","@web-atoms/core/dist/core/Command","@web-atoms/core/dist/core/EventScope","@web-atoms/core/dist/core/Route","@web-atoms/core/dist/core/InheritedProperty","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/sleep","@web-atoms/core/dist/services/NavigationService","@web-atoms/core/dist/core/AtomComponent","@web-atoms/core/dist/App","@web-atoms/core/dist/core/AtomDispatcher","@web-atoms/core/dist/di/ServiceProvider","@web-atoms/core/dist/core/TransientDisposable","@web-atoms/core/dist/di/Inject","@web-atoms/core/dist/services/BusyIndicatorService","@web-atoms/core/dist/core/AtomDisposableList","@web-atoms/core/dist/core/AtomWatcher","@web-atoms/core/dist/core/Hacks","@web-atoms/core/dist/core/PropertyMap","@web-atoms/core/dist/core/FormattedString","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/WebImage","@web-atoms/core/dist/web/styles/AtomStyle","@web-atoms/core/dist/web/styles/AtomStyleSheet","@web-atoms/core/dist/web/services/PopupService","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/services/PopupWindow","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/desktop-app/DesktopApp","@social-mail/social-mail-client/dist/web/commands/AppCommands","@social-mail/social-mail-client/dist/web/page/home/HomePage","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxListPage","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/core/dist/core/Colors","@web-atoms/core/dist/core/WatchProperty","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/styles/inline-popup-style","@web-atoms/web-controls/dist/basic/MergeNode","@web-atoms/web-controls/dist/basic/ItemPath","@web-atoms/web-controls/dist/basic/styles/ui-display-none-style","@web-atoms/web-controls/dist/basic/styles/popup-style","@web-atoms/web-controls/dist/basic/styles/suggestion-popup","@web-atoms/web-controls/dist/basic/styles/repeater-style","@web-atoms/web-controls/dist/DataAttributes","@social-mail/social-mail-client/dist/common/controls/repeater/InfiniteRepeater","@social-mail/social-mail-client/dist/common/pages/mailboxes/services/MailboxService","@web-atoms/core/dist/di/DITransient","@social-mail/social-mail-client/dist/services/EntityService","@web-atoms/entity/dist/services/BaseEntityService","@web-atoms/entity/dist/models/Cloner","@web-atoms/entity/dist/models/cloneSource","@web-atoms/entity/dist/models/IEntityModel","@web-atoms/entity/dist/services/HttpSession","@web-atoms/core/dist/services/http/JsonError","@web-atoms/entity/dist/models/TaskManager","@web-atoms/entity/dist/models/Queue","@web-atoms/entity/dist/services/mergeProperties","@web-atoms/entity/dist/services/Query","@web-atoms/entity/dist/services/StringHelper","@web-atoms/entity/dist/services/resolve","@social-mail/social-mail-client/dist/services/BusyProgress","@social-mail/social-mail-client/dist/model/model","@social-mail/social-mail-client/dist/common/Sql","@social-mail/social-mail-client/dist/common/SocialMailApp","@web-atoms/core/dist/view-model/Action","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxEditorPage","@web-atoms/web-controls/dist/basic/Form","@social-mail/social-mail-client/dist/common/controls/form/RequiredFormField","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/styles/form-field-style","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/basic/styles/password-box-style","@web-atoms/web-controls/dist/basic/ComboBox","@social-mail/social-mail-client/dist/common/controls/buttons/IconButton","@social-mail/social-mail-client/dist/admin/pages/users/ChooseUserPage","@social-mail/social-mail-client/dist/admin/pages/users/services/AdminUserService","@web-atoms/web-controls/dist/basic/Checkbox","@web-atoms/web-controls/dist/basic/styles/checkbox-style","@social-mail/social-mail-client/dist/common/NumberFormats","@social-mail/social-mail-client/dist/common/commands/CommonCommands","@social-mail/social-mail-client/dist/web/page/mails/MailboxContacts","@social-mail/social-mail-client/dist/web/page/mails/service/MailService","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@social-mail/social-mail-client/dist/web/page/mails/ConversationPage","@social-mail/social-mail-client/dist/web/page/mails/service/ConversationService","@web-atoms/email-dom/dist/DomToString","@web-atoms/email-dom/dist/dom/StyleHelper","@web-atoms/email-dom/dist/style/mergeStyle","@social-mail/social-mail-client/dist/common/events/CommonEvents","@web-atoms/web-controls/dist/basic/InlinePopupControl","@social-mail/social-mail-client/dist/web/page/mails/ComposeMailPage","@social-mail/social-mail-client/dist/common/controls/html/InlineHtmlEditorWithToolbar","@web-atoms/web-controls/dist/html-editor/InlineHtmlEditor","@web-atoms/data-styles/data-styles","@web-atoms/web-controls/dist/html-editor/commands/AddImage","@web-atoms/web-controls/dist/html-editor/commands/CommandButton","@web-atoms/web-controls/dist/html-editor/commands/HtmlCommands","@web-atoms/web-controls/dist/html-editor/commands/Toolbar","@web-atoms/web-controls/dist/html-editor/commands/Bold","@web-atoms/web-controls/dist/html-editor/commands/Command","@web-atoms/web-controls/dist/html-editor/commands/Italic","@web-atoms/web-controls/dist/html-editor/commands/Underline","@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough","@web-atoms/web-controls/dist/html-editor/commands/Align","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/styles/popup-button-style","@web-atoms/web-controls/dist/html-editor/commands/HorizontalRule","@web-atoms/web-controls/dist/html-editor/commands/Separator","@web-atoms/web-controls/dist/html-editor/commands/Headings","@web-atoms/web-controls/dist/html-editor/commands/ChangeColor","@web-atoms/web-controls/dist/html-editor/commands/ChangeFont","@web-atoms/web-controls/dist/html-editor/commands/ChangeFontSize","@web-atoms/web-controls/dist/html-editor/commands/NumberedList","@web-atoms/web-controls/dist/html-editor/commands/UnorderedList","@web-atoms/web-controls/dist/html-editor/commands/IndentLess","@web-atoms/web-controls/dist/html-editor/commands/IndentMore","@web-atoms/web-controls/dist/html-editor/commands/AddLink","@web-atoms/core/dist/web/controls/AtomToggleButtonBar","@web-atoms/core/dist/web/styles/AtomToggleButtonBarStyle","@web-atoms/core/dist/web/styles/AtomListBoxStyle","@web-atoms/core/dist/web/controls/AtomListBox","@web-atoms/core/dist/web/controls/AtomItemsControl","@web-atoms/core/dist/core/AtomEnumerator","@web-atoms/core/dist/core/AtomList","@web-atoms/web-controls/dist/html-editor/commands/Unlink","@web-atoms/web-controls/dist/html-editor/commands/RemoveFormat","@web-atoms/web-controls/dist/html-editor/commands/Source","@web-atoms/web-controls/dist/basic/UploadEvent","@social-mail/social-mail-client/dist/services/files/LocalFileService","@web-atoms/web-controls/dist/basic/TitleEditor","@web-atoms/web-controls/dist/basic/styles/title-editor-style","@social-mail/social-mail-client/dist/common/controls/email-recipients/EmailRecipientChips","@web-atoms/web-controls/dist/basic/AtomChips","@web-atoms/web-controls/dist/basic/Chip","@web-atoms/web-controls/dist/basic/styles/chip-style","@web-atoms/web-controls/dist/basic/styles/chips-style","@web-atoms/web-controls/dist/basic/styles/item-suggestion-style","@social-mail/social-mail-client/dist/services/email-addresses/EmailAddressService","@social-mail/social-mail-client/dist/common/cache/CacheTTL","@social-mail/social-mail-client/dist/web/page/templates/social/SocialTemplate","@social-mail/social-mail-client/dist/services/Emoji","@social-mail/social-mail-client/dist/services/socket/sockets","@web-atoms/web-controls/dist/basic/LimitedText","@social-mail/social-mail-client/dist/common/date/DateFormats","@social-mail/social-mail-client/dist/common/pages/logs/LogsPage","@social-mail/social-mail-client/dist/common/pages/logs/services/AppLogService","@social-mail/social-mail-client/dist/web/page/mails/detail/MailDetailPage","@social-mail/social-mail-client/dist/common/controls/file-preview/FilePreview","@social-mail/social-mail-client/dist/web/page/mails/MiniComposeBox","@social-mail/social-mail-client/dist/common/controls/audio/AudioRecorder","@web-atoms/web-controls/dist/mobile-app/BottomPopup","@web-atoms/web-controls/dist/animations/Animations","@social-mail/social-mail-client/dist/common/controls/audio/WebRTCService","@social-mail/social-mail-client/dist/common/controls/buttons/RoundButton","@social-mail/social-mail-client/dist/web/page/mails/ChooseMailboxPage","@social-mail/social-mail-client/dist/common/pages/folders/ChooseTemplatePage","@social-mail/social-mail-client/dist/web/page/files/service/CloudFileService","@web-atoms/core/dist/services/FetchBuilder","@social-mail/social-mail-client/dist/common/controls/tree/TreeView","@social-mail/social-mail-client/dist/services/mime-service/MimeMessage","@social-mail/social-mail-client/dist/services/mime-service/MimeNode","@social-mail/social-mail-client/dist/common/QueryIterator","@social-mail/social-mail-client/dist/services/mime-service/AttachmentFile","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentType","@social-mail/social-mail-client/dist/services/mime-service/parsePairs","@social-mail/social-mail-client/dist/services/mime-service/tokenizer","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentDisposition","@social-mail/social-mail-client/dist/services/mime-service/encoder/word-encoding","@social-mail/social-mail-client/dist/services/mime-service/encoder/RawBuffer","@social-mail/social-mail-client/dist/services/mime-service/encoder/base64-to-blob","@social-mail/social-mail-client/dist/services/mime-service/encoder/quoted-printable","@social-mail/social-mail-client/dist/services/mime-service/stream/LineStream","@social-mail/social-mail-client/dist/services/mime-service/stream/TextWriter","@web-atoms/web-controls/dist/basic/Resizable","@web-atoms/web-controls/dist/basic/ToggleButtonBar","@web-atoms/web-controls/dist/basic/styles/toggle-button-bar-style","@social-mail/social-mail-client/dist/web/page/channels/detail/ChannelDetailPage","@social-mail/social-mail-client/dist/web/page/channels/subscribers/ChannelSubscribersPage","@social-mail/social-mail-client/dist/web/page/channels/services/ChannelService","@social-mail/social-mail-client/dist/web/page/channels/subscribers/add/AddSubscriberPage","@social-mail/social-mail-client/dist/web/page/channels/subscribers/rights/UpdateRightsPage","@social-mail/social-mail-client/dist/common/pages/drives/DriveListPage","@social-mail/social-mail-client/dist/common/pages/websites/manage/ManageWebSitePage","@social-mail/social-mail-client/dist/services/websites/WebSiteService","@social-mail/social-mail-client/dist/common/controls/collection-editor/CollectionEditor","@web-atoms/web-controls/dist/basic/Expander","@web-atoms/web-controls/dist/basic/styles/expander-style","@social-mail/social-mail-client/dist/common/pages/websites/studio/WebSiteStudioPage","@social-mail/social-mail-client/dist/web/page/files/shares/EditSharesPage","@social-mail/social-mail-client/dist/services/files/FileShareService","@social-mail/social-mail-client/dist/web/page/files/shares/AddSharePage","@web-atoms/web-controls/dist/basic/Switch","@web-atoms/web-controls/dist/basic/styles/switch-style","@social-mail/social-mail-client/dist/common/controls/drop-downs/user/UserDropDown","@web-atoms/web-controls/dist/basic/DropDown","@web-atoms/web-controls/dist/basic/styles/drop-down-style","@web-atoms/web-controls/dist/basic/DateField","@web-atoms/web-controls/dist/basic/Calendar","@web-atoms/web-controls/dist/basic/Select","@web-atoms/web-controls/dist/basic/styles/calendar-style","@web-atoms/web-controls/dist/basic/TimeEditor","@web-atoms/web-controls/dist/basic/styles/time-editor-style","@web-atoms/web-controls/dist/basic/styles/date-field-style","@social-mail/social-mail-client/dist/web/page/templates/EditTemplatePage","@social-mail/social-mail-client/dist/common/pages/websites/templates/ChooseWebSiteTemplatePage","@social-mail/social-mail-client/dist/common/controls/tree/FileTreeView","@social-mail/social-mail-client/dist/site-editor/editor/WebSitePageEditor","@social-mail/social-mail-client/dist/site-editor/editor/HtmlPageEditor","@social-mail/social-mail-client/dist/site-editor/blocks/ImageBlock","@social-mail/social-mail-client/dist/site-editor/blocks/Block","@social-mail/social-mail-client/dist/site-editor/drag-drop/DragDropHelper","@social-mail/social-mail-client/dist/site-editor/commands/CodeCommand","@social-mail/social-mail-client/dist/site-editor/commands/EditorCommand","@social-mail/social-mail-client/dist/site-editor/toolbars/UndoRedoToolbar","@social-mail/social-mail-client/dist/site-editor/toolbars/EditorToolbar","@social-mail/social-mail-client/dist/site-editor/blocks/WrapGrid","@social-mail/social-mail-client/dist/site-editor/properties/Properties","@social-mail/social-mail-client/dist/site-editor/properties/groups/LayoutEditor","@social-mail/social-mail-client/dist/site-editor/properties/controls/PropertyEditor","@social-mail/social-mail-client/dist/site-editor/styler/StylerSet","@social-mail/social-mail-client/dist/site-editor/styler/Styler","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerBorder","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/display","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/flex/flex","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/items-position/itemsPosition","@social-mail/social-mail-client/dist/site-editor/styler/properties/layout/layout","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerPosition","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerSizes","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerSpace","@social-mail/social-mail-client/dist/site-editor/styler/properties/text/stylerText","@social-mail/social-mail-client/dist/site-editor/styler/properties/stylerBackground","@social-mail/social-mail-client/dist/site-editor/properties/groups/TextPropertyEditor","@social-mail/social-mail-client/dist/site-editor/properties/controls/SizeEditorControl","@social-mail/social-mail-client/dist/site-editor/properties/groups/BorderGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/SizeGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/SpaceGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/PositionGroupEditor","@social-mail/social-mail-client/dist/site-editor/properties/groups/BackgroundGroupEditor","@social-mail/social-mail-client/dist/site-editor/editor/SelectedElement","@social-mail/social-mail-client/dist/web/page/files/media/ChooseMediaPage","@social-mail/social-mail-client/dist/common/controls/drag-drop/FilesDragDrop","@social-mail/social-mail-client/dist/common/pages/user/change-password/ChangePasswordPage","@social-mail/social-mail-client/dist/common/pages/user/services/UserService","@social-mail/social-mail-client/dist/common/controls/password/PasswordStrength","@social-mail/social-mail-client/dist/common/validators/Validators","@social-mail/social-mail-client/dist/common/pages/user/multi-factor/MultiFactorSetupPage","@social-mail/social-mail-client/dist/common/pages/websites/list/WebSiteListPage","@social-mail/social-mail-client/dist/common/pages/websites/edit/WebSiteFolderEditor","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage","@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage","@social-mail/social-mail-client/dist/common/icons/Icons","@social-mail/social-mail-client/dist/web/page/files/FolderPage","@social-mail/social-mail-client/dist/web/page/files/preview/image/PreviewImage","@web-atoms/web-controls/dist/basic/PinchZoomView","@web-atoms/web-controls/dist/basic/styles/pinch-zoom-view-style","@social-mail/social-mail-client/dist/web/page/files/preview/document/PreviewDocument","@social-mail/social-mail-client/dist/web/page/files/preview/media/PreviewMedia","@web-atoms/web-controls/dist/player/AtomVideoPlayer","@social-mail/social-mail-client/dist/services/FileTypes","@social-mail/social-mail-client/dist/style/GlobalStyle","@social-mail/social-mail-client/dist/style/OverrideAppStyle","@social-mail/social-mail-client/dist/services/LoginService","@social-mail/social-mail-client/dist/common/pages/user/login/LoginPage","@social-mail/social-mail-client/dist/web/drawer/AppDrawer","@social-mail/social-mail-client/dist/common/controls/menu/MenuItem","@social-mail/social-mail-client/dist/common/controls/ModuleInfo","@social-mail/social-mail-client/dist/services/WebPushService","@web-atoms/core/dist/web/WebApp","@web-atoms/core/dist/core/AtomOnce","@web-atoms/core/dist/web/services/WebBusyIndicatorService","@web-atoms/core/dist/web/styles/StyleBuilder","@web-atoms/core/dist/web/services/WindowService","@web-atoms/core/dist/Atom","@web-atoms/core/dist/core/FormattedError","@web-atoms/core/dist/view-model/AtomWindowViewModel","@web-atoms/core/dist/view-model/AtomViewModel","@web-atoms/core/dist/view-model/baseTypes","@web-atoms/core/dist/web/controls/AtomAlertWindow","@web-atoms/core/dist/web/styles/AtomAlertWindowStyle","@web-atoms/core/dist/web/styles/AtomWindowStyle","@web-atoms/core/src/web/images/close-button-hover.svg","@web-atoms/core/dist/web/controls/AtomWindow","@web-atoms/core/dist/web/controls/AtomTemplate","@web-atoms/core/dist/web/controls/AtomNotification","@web-atoms/core/dist/web/styles/AtomNotificationStyle","@web-atoms/core/dist/web/styles/AtomPopupStyle","@web-atoms/core/dist/web/services/NotificationPopup","@web-atoms/core/dist/web/styles/AtomTheme"]);
1989
1989
 
1990
1990
  System.register([], function (_export, _context) {
1991
1991
  "use strict";
@@ -18002,7 +18002,7 @@ System.register(["@web-atoms/core/dist/core/EventScope"], function (_export, _co
18002
18002
  System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/core/dist/di/Inject", "../../../../services/EntityService", "../../../../model/model", "../../../../common/Sql", "@web-atoms/email-dom/dist/DomToString", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/web/controls/AtomControl", "@web-atoms/core/dist/web/core/AtomUI", "@web-atoms/date-time/dist/DateTime", "../../../../common/events/CommonEvents", "../../../../services/BusyProgress"], function (_export, _context) {
18003
18003
  "use strict";
18004
18004
 
18005
- var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, Email, MailboxContactEmail, Sql, DomToString, XNode, AtomControl, descendentElementIterator, DateTime, CommonEvents, BusyProgress, renderMail, downloadEmailContent, ConversationService;
18005
+ var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, Email, EmailRecipient, MailboxContactEmail, MailboxEmail, Sql, DomToString, XNode, AtomControl, descendentElementIterator, DateTime, CommonEvents, BusyProgress, renderMail, downloadEmailContent, ConversationService;
18006
18006
  return {
18007
18007
  setters: [function (_tslib) {
18008
18008
  __awaiter = _tslib.__awaiter;
@@ -18016,7 +18016,9 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
18016
18016
  EntityService = _servicesEntityService.default;
18017
18017
  }, function (_modelModel) {
18018
18018
  Email = _modelModel.Email;
18019
+ EmailRecipient = _modelModel.EmailRecipient;
18019
18020
  MailboxContactEmail = _modelModel.MailboxContactEmail;
18021
+ MailboxEmail = _modelModel.MailboxEmail;
18020
18022
  }, function (_commonSql) {
18021
18023
  Sql = _commonSql.Sql;
18022
18024
  }, function (_webAtomsEmailDomDistDomToString) {
@@ -18117,6 +18119,61 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
18117
18119
  }
18118
18120
  });
18119
18121
  ConversationService = class ConversationService {
18122
+ getDraft({
18123
+ mailboxID,
18124
+ emailAddressID,
18125
+ email
18126
+ }) {
18127
+ return __awaiter(this, void 0, void 0, function* () {
18128
+ const draft = "draft";
18129
+ return yield this.entityService.query(MailboxContactEmail).where({
18130
+ mailboxID,
18131
+ emailAddressID,
18132
+ draft
18133
+ }, p => x => x.mailboxID === p.mailboxID && x.emailAddressID === p.emailAddressID && x.email.status === p.draft).orderByDescending(x => x.emailID).include(x => [x.email.recipients, x.email.attachments]).firstOrDefault();
18134
+ });
18135
+ }
18136
+ draft({
18137
+ mailboxID,
18138
+ emailAddressID,
18139
+ email
18140
+ }, create = false) {
18141
+ var _a, _b;
18142
+ return __awaiter(this, void 0, void 0, function* () {
18143
+ if (email === null || email === void 0 ? void 0 : email.emailID) {
18144
+ if (!email.textBody) {
18145
+ email.textBody = email.mdBody;
18146
+ }
18147
+ if (!email.subject) {
18148
+ email.subject = email.textBody.substring(0, 80);
18149
+ }
18150
+ const cloner = this.entityService.cloner(email).include(x => x.attachments).include(x => x.recipients);
18151
+ yield this.entityService.save(cloner.copy);
18152
+ return email;
18153
+ }
18154
+ if (create && email) {
18155
+ (_a = email.recipients) !== null && _a !== void 0 ? _a : email.recipients = [];
18156
+ (_b = email.mailboxes) !== null && _b !== void 0 ? _b : email.mailboxes = [];
18157
+ if (!email.mailboxes.some(m => m.mailboxID === mailboxID)) {
18158
+ email.mailboxes.push(MailboxEmail.create({
18159
+ mailboxID
18160
+ }));
18161
+ }
18162
+ if (!email.recipients.some(r => r.emailAddressID === emailAddressID)) {
18163
+ email.recipients.push(EmailRecipient.create({
18164
+ emailAddressID
18165
+ }));
18166
+ }
18167
+ const mce = MailboxContactEmail.create({
18168
+ mailboxID,
18169
+ emailAddressID,
18170
+ email
18171
+ });
18172
+ yield this.entityService.save(mce);
18173
+ }
18174
+ return email;
18175
+ });
18176
+ }
18120
18177
  list({
18121
18178
  search = "",
18122
18179
  mailboxID,
@@ -18126,7 +18183,7 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
18126
18183
  version = 0,
18127
18184
  cancelToken
18128
18185
  }) {
18129
- var _a;
18186
+ var _a, _b, _c;
18130
18187
  return __awaiter(this, void 0, void 0, function* () {
18131
18188
  let q = this.entityService.query(MailboxContactEmail).where({
18132
18189
  mailboxID,
@@ -18151,11 +18208,13 @@ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/cor
18151
18208
  for (const {
18152
18209
  email
18153
18210
  } of emails.items) {
18211
+ (_a = email.htmlBody) !== null && _a !== void 0 ? _a : email.htmlBody = "";
18212
+ (_b = email.textBody) !== null && _b !== void 0 ? _b : email.textBody = "";
18154
18213
  tasks.push(downloadEmailContent(this.entityService, email));
18155
18214
  }
18156
18215
  yield Promise.all(tasks);
18157
18216
  } finally {
18158
- (_a = d === null || d === void 0 ? void 0 : d.dispose) === null || _a === void 0 ? void 0 : _a.call(d);
18217
+ (_c = d === null || d === void 0 ? void 0 : d.dispose) === null || _c === void 0 ? void 0 : _c.call(d);
18159
18218
  }
18160
18219
  return emails;
18161
18220
  });
@@ -23697,22 +23756,621 @@ System.register(["@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/style/
23697
23756
 
23698
23757
  AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/file-preview/FilePreview");
23699
23758
 
23700
- System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/style/styled", "@web-atoms/core/dist/web/controls/AtomControl", "@web-atoms/core/dist/core/Bind"], function (_export, _context) {
23759
+ System.register(["@web-atoms/core/dist/style/styled", "@web-atoms/core/dist/web/controls/AtomControl"], function (_export, _context) {
23760
+ "use strict";
23761
+
23762
+ var styled, AtomControl, Animations;
23763
+ _export("default", void 0);
23764
+ return {
23765
+ setters: [function (_webAtomsCoreDistStyleStyled) {
23766
+ styled = _webAtomsCoreDistStyleStyled.default;
23767
+ }, function (_webAtomsCoreDistWebControlsAtomControl) {
23768
+ AtomControl = _webAtomsCoreDistWebControlsAtomControl.AtomControl;
23769
+ }],
23770
+ execute: function () {
23771
+ styled.css`
23772
+ transition: all 0.5s ease-out;
23773
+
23774
+ &:not([data-animation-state]) {
23775
+ display: none;
23776
+ }
23777
+
23778
+ &[data-animation-state=down] {
23779
+ transform: translate(0,100%);
23780
+ }
23781
+
23782
+ &[data-animation-state=normal] {
23783
+ transform: translate(0,0);
23784
+ }
23785
+ `.installGlobal("[data-animate-slide=from-bottom]");
23786
+ styled.css`
23787
+ transition: all 0.5s ease-out;
23788
+
23789
+ &:not([data-animation-state]) {
23790
+ display: none;
23791
+ }
23792
+
23793
+ &[data-animation-state=up] {
23794
+ transform: translate(0,-100%);
23795
+ }
23796
+
23797
+ &[data-animation-state=normal] {
23798
+ transform: translate(0,0);
23799
+ }
23800
+ `.installGlobal("[data-animate-slide=from-top]");
23801
+ _export("default", Animations = class Animations {});
23802
+ Animations.slideFromBottom = AtomControl.registerProperty("animate", "bottom-slide", (ctrl, e, v) => {
23803
+ e.dataset.animateSlide = "from-bottom";
23804
+ if (v) {
23805
+ e.dataset.animationState = "down";
23806
+ setTimeout(() => {
23807
+ e.dataset.animationState = "normal";
23808
+ }, 10);
23809
+ return;
23810
+ }
23811
+ if (e.dataset.animationState === "normal") {
23812
+ e.dataset.animationState = "down";
23813
+ }
23814
+ setTimeout(() => {
23815
+ e.removeAttribute("data-animation-state");
23816
+ }, 600);
23817
+ });
23818
+ Animations.slideFromTop = AtomControl.registerProperty("animate", "top-slide", (ctrl, e, v) => {
23819
+ e.dataset.animateSlide = "from-top";
23820
+ if (v) {
23821
+ e.dataset.animationState = "up";
23822
+ setTimeout(() => {
23823
+ e.dataset.animationState = "normal";
23824
+ }, 10);
23825
+ return;
23826
+ }
23827
+ if (e.dataset.animationState === "normal") {
23828
+ e.dataset.animationState = "up";
23829
+ }
23830
+ setTimeout(() => {
23831
+ e.removeAttribute("data-animation-state");
23832
+ }, 600);
23833
+ });
23834
+ }
23835
+ };
23836
+ });
23837
+ //# sourceMappingURL=Animations.js.map
23838
+
23839
+ AmdLoader.instance.setup("@web-atoms/web-controls/dist/animations/Animations");
23840
+
23841
+ System.register(["tslib", "@web-atoms/core/dist/core/BindableProperty", "@web-atoms/core/dist/core/types", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/web/controls/AtomControl", "@web-atoms/core/dist/web/core/AtomUI", "@web-atoms/core/dist/web/services/PopupService", "../animations/Animations", "./MobileApp", "@web-atoms/core/dist/style/styled"], function (_export, _context) {
23842
+ "use strict";
23843
+
23844
+ var __awaiter, __decorate, __metadata, BindableProperty, CancelToken, XNode, AtomControl, ChildEnumerator, PopupService, MobileApp, styled, BottomPopup;
23845
+ _export("default", void 0);
23846
+ return {
23847
+ setters: [function (_tslib) {
23848
+ __awaiter = _tslib.__awaiter;
23849
+ __decorate = _tslib.__decorate;
23850
+ __metadata = _tslib.__metadata;
23851
+ }, function (_webAtomsCoreDistCoreBindableProperty) {
23852
+ BindableProperty = _webAtomsCoreDistCoreBindableProperty.BindableProperty;
23853
+ }, function (_webAtomsCoreDistCoreTypes) {
23854
+ CancelToken = _webAtomsCoreDistCoreTypes.CancelToken;
23855
+ }, function (_webAtomsCoreDistCoreXNode) {
23856
+ XNode = _webAtomsCoreDistCoreXNode.default;
23857
+ }, function (_webAtomsCoreDistWebControlsAtomControl) {
23858
+ AtomControl = _webAtomsCoreDistWebControlsAtomControl.AtomControl;
23859
+ }, function (_webAtomsCoreDistWebCoreAtomUI) {
23860
+ ChildEnumerator = _webAtomsCoreDistWebCoreAtomUI.ChildEnumerator;
23861
+ }, function (_webAtomsCoreDistWebServicesPopupService) {
23862
+ PopupService = _webAtomsCoreDistWebServicesPopupService.default;
23863
+ }, function (_animationsAnimations) {
23864
+ _export({});
23865
+ }, function (_MobileApp) {
23866
+ MobileApp = _MobileApp.default;
23867
+ }, function (_webAtomsCoreDistStyleStyled) {
23868
+ styled = _webAtomsCoreDistStyleStyled.default;
23869
+ }],
23870
+ execute: function () {
23871
+ styled.css`
23872
+ position: absolute;
23873
+ left: 0;
23874
+ top: 0;
23875
+ bottom: 0;
23876
+ right: 0;
23877
+ background-color: rgba(0,0,0,0.3);
23878
+ z-index: 500;
23879
+ `.installGlobal("*[data-bottom-popup-container]");
23880
+ styled.css`
23881
+ position: absolute;
23882
+ left: 0px;
23883
+ right: 0px;
23884
+ bottom: 0px;
23885
+ margin-left: 2px;
23886
+ margin-right: 2px;
23887
+ border-top-left-radius: 5px;
23888
+ border-top-right-radius: 5px;
23889
+ display: grid;
23890
+ grid-template-columns: auto 1fr auto;
23891
+ grid-template-rows: auto auto auto;
23892
+ background-color: #ffffff;
23893
+
23894
+ & > [data-element=bar] {
23895
+ border-top-left-radius: 5px;
23896
+ border-top-right-radius: 5px;
23897
+ grid-row: 1;
23898
+ grid-column: 1 / span 3;
23899
+ background-color: #d3d3d3;
23900
+ z-index: 10;
23901
+ }
23902
+
23903
+ & > [data-element=icon] {
23904
+ grid-row: 1;
23905
+ grid-column: 1;
23906
+ padding: 5px;
23907
+ align-self: center;
23908
+ margin-right: 5px;
23909
+ z-index: 11;
23910
+ }
23911
+
23912
+ & > [data-element=close] {
23913
+ grid-row: 1;
23914
+ grid-column: 3;
23915
+ padding: 5px;
23916
+ margin-left: 5px;
23917
+ align-self: center;
23918
+ z-index: 11;
23919
+ }
23920
+
23921
+ & > [data-element=title] {
23922
+ grid-row: 1;
23923
+ grid-column: 2;
23924
+ padding: 5px;
23925
+ z-index: 11;
23926
+ }
23927
+
23928
+ & > [data-element=content] {
23929
+ padding: 5px;
23930
+ grid-row: 2;
23931
+ grid-column: 1 / span 3;
23932
+ z-index: 11;
23933
+ }
23934
+
23935
+ & > [data-element=footer] {
23936
+ grid-row: 3;
23937
+ grid-column: 1 / span 3;
23938
+ margin-top: 5px;
23939
+ padding: 5px;
23940
+ z-index: 11;
23941
+ }
23942
+ `.installGlobal("*[data-bottom-popup]");
23943
+ _export("default", BottomPopup = class BottomPopup extends AtomControl {
23944
+ static showModal(options) {
23945
+ return this.show(options);
23946
+ }
23947
+ static show({
23948
+ parameters,
23949
+ cancelToken
23950
+ } = {}) {
23951
+ var _a;
23952
+ return __awaiter(this, void 0, void 0, function* () {
23953
+ const last = PopupService.lastTarget;
23954
+ const current = MobileApp.current;
23955
+ const popup = new this(current.app);
23956
+ popup.parameters = parameters;
23957
+ popup.bindEvent(window, "backButton", ce => {
23958
+ ce.preventDefault();
23959
+ return popup.cancelRequested();
23960
+ }, void 0, true);
23961
+ popup.bindEvent(popup.element, "cancelPopup", () => popup.cancelRequested());
23962
+ if (popup.modal) {
23963
+ const container = document.createElement("div");
23964
+ container.setAttribute("data-bottom-popup-container", "1");
23965
+ popup.bindEvent(container, "click", e => {
23966
+ if (e.target === e.currentTarget) {
23967
+ e.preventDefault();
23968
+ e.stopImmediatePropagation();
23969
+ e.stopPropagation();
23970
+ popup.element.dispatchEvent(new CustomEvent("cancelPopup"));
23971
+ }
23972
+ });
23973
+ popup.registerDisposable({
23974
+ dispose: () => {
23975
+ container.remove();
23976
+ }
23977
+ });
23978
+ container.append(popup.element);
23979
+ current.element.append(container);
23980
+ } else {
23981
+ current.element.append(popup.element);
23982
+ }
23983
+ if (cancelToken) {
23984
+ cancelToken.registerForCancel(popup.cancel);
23985
+ }
23986
+ const result = new Promise((resolve, reject) => {
23987
+ let disposed = false;
23988
+ popup.close = r => {
23989
+ if (disposed) {
23990
+ return;
23991
+ }
23992
+ disposed = true;
23993
+ popup.dispose();
23994
+ resolve(r);
23995
+ PopupService.lastTarget = last;
23996
+ };
23997
+ popup.cancel = (reason = "cancelled") => {
23998
+ if (disposed) {
23999
+ return;
24000
+ }
24001
+ disposed = true;
24002
+ popup.dispose();
24003
+ reject(reason);
24004
+ PopupService.lastTarget = last;
24005
+ };
24006
+ });
24007
+ const pr = (_a = popup.init) === null || _a === void 0 ? void 0 : _a.call(popup);
24008
+ if (pr) {
24009
+ try {
24010
+ yield pr;
24011
+ } catch (e) {
24012
+ popup.cancel(e);
24013
+ }
24014
+ }
24015
+ return yield result;
24016
+ });
24017
+ }
24018
+ dispose(e) {
24019
+ if (e) {
24020
+ super.dispose(e);
24021
+ return;
24022
+ }
24023
+ const element = this.element;
24024
+ this.element.setAttribute("data-animation-state", "down");
24025
+ setTimeout(() => {
24026
+ super.dispose(e);
24027
+ element.remove();
24028
+ }, 500);
24029
+ }
24030
+ init() {
24031
+ return __awaiter(this, void 0, void 0, function* () {});
24032
+ }
24033
+ preCreate() {
24034
+ this.modal = true;
24035
+ const element = this.element;
24036
+ element.dataset.bottomPopup = "bottom-popup";
24037
+ this.animate = true;
24038
+ super.preCreate();
24039
+ this.barRenderer = () => XNode.create("div", null);
24040
+ this.popupCancelToken = new CancelToken();
24041
+ this.registerDisposable({
24042
+ dispose: () => {
24043
+ this.popupCancelToken.cancel();
24044
+ }
24045
+ });
24046
+ this.bindEvent(this.element, "closeClick", () => this.cancelRequested());
24047
+ }
24048
+ render(node, e, creator) {
24049
+ var _a, _b;
24050
+ this.render = super.render;
24051
+ const na = (_a = node.attributes) !== null && _a !== void 0 ? _a : node.attributes = {};
24052
+ na["data-element"] = "content";
24053
+ (_b = na["data-click-event"]) !== null && _b !== void 0 ? _b : na["data-click-event"] = "popupClick";
24054
+ this.render(XNode.create("div", null, node));
24055
+ this.updateElement("title");
24056
+ this.updateElement("bar");
24057
+ this.updateElement("icon");
24058
+ this.updateElement("close");
24059
+ this.updateElement("footer");
24060
+ if (!this.animate) {
24061
+ return;
24062
+ }
24063
+ this.element.setAttribute("data-animate-slide", this.animate ? "from-bottom" : "normal");
24064
+ this.element.setAttribute("data-animation-state", "down");
24065
+ this.animate = false;
24066
+ setTimeout(() => {
24067
+ this.element.setAttribute("data-animation-state", "normal");
24068
+ }, 10);
24069
+ }
24070
+ cancelRequested() {
24071
+ return this.cancel();
24072
+ }
24073
+ updateElement(name, property = name + "Renderer") {
24074
+ var _a, _b;
24075
+ const r = this[property];
24076
+ const child = ChildEnumerator.find(this.element, e => e.dataset.element === name);
24077
+ if (child) {
24078
+ this.dispose(child);
24079
+ child.remove();
24080
+ }
24081
+ const node = r === null || r === void 0 ? void 0 : r();
24082
+ if (!node) {
24083
+ return;
24084
+ }
24085
+ const na = (_a = node.attributes) !== null && _a !== void 0 ? _a : node.attributes = {};
24086
+ na["data-element"] = name;
24087
+ (_b = na["data-click-event"]) !== null && _b !== void 0 ? _b : na["data-click-event"] = name + "-click";
24088
+ this.render(XNode.create("div", null, node));
24089
+ }
24090
+ });
24091
+ __decorate([BindableProperty, __metadata("design:type", Function)], BottomPopup.prototype, "titleRenderer", void 0);
24092
+ __decorate([BindableProperty, __metadata("design:type", Function)], BottomPopup.prototype, "headerRenderer", void 0);
24093
+ __decorate([BindableProperty, __metadata("design:type", Function)], BottomPopup.prototype, "closeRenderer", void 0);
24094
+ __decorate([BindableProperty, __metadata("design:type", Function)], BottomPopup.prototype, "footerRenderer", void 0);
24095
+ __decorate([BindableProperty, __metadata("design:type", Function)], BottomPopup.prototype, "barRenderer", void 0);
24096
+ delete BottomPopup.prototype.init;
24097
+ }
24098
+ };
24099
+ });
24100
+ //# sourceMappingURL=BottomPopup.js.map
24101
+
24102
+ AmdLoader.instance.setup("@web-atoms/web-controls/dist/mobile-app/BottomPopup");
24103
+
24104
+ System.register(["tslib", "@web-atoms/date-time/dist/TimeSpan"], function (_export, _context) {
24105
+ "use strict";
24106
+
24107
+ var __awaiter, TimeSpan, WebRecordingSession, WebRTCService;
24108
+ _export({
24109
+ WebRecordingSession: void 0,
24110
+ default: void 0
24111
+ });
24112
+ return {
24113
+ setters: [function (_tslib) {
24114
+ __awaiter = _tslib.__awaiter;
24115
+ }, function (_webAtomsDateTimeDistTimeSpan) {
24116
+ TimeSpan = _webAtomsDateTimeDistTimeSpan.default;
24117
+ }],
24118
+ execute: function () {
24119
+ _export("WebRecordingSession", WebRecordingSession = class WebRecordingSession {
24120
+ constructor(stream) {
24121
+ this.duration = TimeSpan.fromSeconds(0);
24122
+ this.recorder = new MediaRecorder(stream);
24123
+ }
24124
+ start(segments) {
24125
+ const buffer = [];
24126
+ return new Promise((resolve, reject) => {
24127
+ this.recorder.ondataavailable = be => {
24128
+ buffer.push(be.data);
24129
+ };
24130
+ const start = Date.now();
24131
+ const id = setInterval(() => {
24132
+ const seconds = Math.ceil((Date.now() - start) / 1000);
24133
+ this.duration = TimeSpan.fromSeconds(seconds);
24134
+ }, 1000);
24135
+ this.recorder.onerror = me => {
24136
+ clearInterval(id);
24137
+ reject(me.error);
24138
+ };
24139
+ this.recorder.onstop = () => {
24140
+ clearInterval(id);
24141
+ resolve(new Blob(buffer, {
24142
+ type: this.recorder.mimeType
24143
+ }));
24144
+ };
24145
+ this.recorder.start(segments);
24146
+ });
24147
+ }
24148
+ stop() {
24149
+ this.recorder.stop();
24150
+ }
24151
+ });
24152
+ _export("default", WebRTCService = class WebRTCService {
24153
+ static startAudioSession() {
24154
+ return __awaiter(this, void 0, void 0, function* () {
24155
+ return new WebRecordingSession(yield navigator.mediaDevices.getUserMedia({
24156
+ audio: true
24157
+ }));
24158
+ });
24159
+ }
24160
+ });
24161
+ }
24162
+ };
24163
+ });
24164
+ //# sourceMappingURL=WebRTCService.js.map
24165
+
24166
+ AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/audio/WebRTCService");
24167
+
24168
+ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/style/styled"], function (_export, _context) {
24169
+ "use strict";
24170
+
24171
+ var __rest, XNode, styled;
24172
+ function RoundButton(_a, ...nodes) {
24173
+ var {
24174
+ icon
24175
+ } = _a,
24176
+ a = __rest(_a, ["icon"]);
24177
+ if (icon) {
24178
+ return XNode.create("button", Object.assign({
24179
+ "data-color": "white",
24180
+ "data-round-button": "round-button"
24181
+ }, a), XNode.create("i", {
24182
+ class: `${icon} white`
24183
+ }), ...nodes);
24184
+ }
24185
+ return XNode.create("button", Object.assign({
24186
+ "data-color": "white",
24187
+ "data-round-button": "round-button"
24188
+ }, a), ...nodes);
24189
+ }
24190
+ _export("default", RoundButton);
24191
+ return {
24192
+ setters: [function (_tslib) {
24193
+ __rest = _tslib.__rest;
24194
+ }, function (_webAtomsCoreDistCoreXNode) {
24195
+ XNode = _webAtomsCoreDistCoreXNode.default;
24196
+ }, function (_webAtomsCoreDistStyleStyled) {
24197
+ styled = _webAtomsCoreDistStyleStyled.default;
24198
+ }],
24199
+ execute: function () {
24200
+ styled.css`
24201
+ border-radius: 9999px;
24202
+ height: 70px;
24203
+ width: 70px;
24204
+ min-height: 70px;
24205
+ text-align: center;
24206
+ align-self: center;
24207
+ border: none;
24208
+ background-color: var(--accent-color);
24209
+ color: var(--accent-text-color);
24210
+ font-weight: bold;
24211
+ flex-basis: auto;
24212
+ margin-left: auto;
24213
+ margin-right: auto;
24214
+ `.installGlobal("button[data-round-button=round-button]");
24215
+ }
24216
+ };
24217
+ });
24218
+ //# sourceMappingURL=RoundButton.js.map
24219
+
24220
+ AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/buttons/RoundButton");
24221
+
24222
+ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dist/core/XNode", "@web-atoms/date-time/dist/DateTime", "@web-atoms/web-controls/dist/mobile-app/BottomPopup", "./WebRTCService", "@web-atoms/core/dist/style/styled", "../buttons/RoundButton", "../../../services/files/LocalFileService"], function (_export, _context) {
24223
+ "use strict";
24224
+
24225
+ var __awaiter, Bind, XNode, DateTime, BottomPopup, WebRTCService, styled, RoundButton, LocalFileService, AudioRecorder, css;
24226
+ _export("default", void 0);
24227
+ return {
24228
+ setters: [function (_tslib) {
24229
+ __awaiter = _tslib.__awaiter;
24230
+ }, function (_webAtomsCoreDistCoreBind) {
24231
+ Bind = _webAtomsCoreDistCoreBind.default;
24232
+ }, function (_webAtomsCoreDistCoreXNode) {
24233
+ XNode = _webAtomsCoreDistCoreXNode.default;
24234
+ }, function (_webAtomsDateTimeDistDateTime) {
24235
+ DateTime = _webAtomsDateTimeDistDateTime.default;
24236
+ }, function (_webAtomsWebControlsDistMobileAppBottomPopup) {
24237
+ BottomPopup = _webAtomsWebControlsDistMobileAppBottomPopup.default;
24238
+ }, function (_WebRTCService) {
24239
+ WebRTCService = _WebRTCService.default;
24240
+ }, function (_webAtomsCoreDistStyleStyled) {
24241
+ styled = _webAtomsCoreDistStyleStyled.default;
24242
+ }, function (_buttonsRoundButton) {
24243
+ RoundButton = _buttonsRoundButton.default;
24244
+ }, function (_servicesFilesLocalFileService) {
24245
+ LocalFileService = _servicesFilesLocalFileService.default;
24246
+ }],
24247
+ execute: function () {
24248
+ css = styled.css`
24249
+
24250
+ position: absolute;
24251
+ left: 0px;
24252
+ right: 0px;
24253
+ bottom: 0px;
24254
+ padding-top: 50px;
24255
+ padding-bottom: 100px;
24256
+ flex-direction: column;
24257
+ align-items: center;
24258
+ justify-content: center;
24259
+ gap: 4px;
24260
+ display: flex;
24261
+ `.installLocal();
24262
+ _export("default", AudioRecorder = class AudioRecorder extends BottomPopup {
24263
+ create() {
24264
+ this.renderer = XNode.create("div", {
24265
+ class: css
24266
+ }, XNode.create("div", {
24267
+ text: "Tap mic when ready"
24268
+ }), XNode.create(RoundButton, {
24269
+ icon: "fa-solid fa-microphone-lines fa-xl",
24270
+ "event-click": () => this.startRecording()
24271
+ }));
24272
+ }
24273
+ startRecording() {
24274
+ return __awaiter(this, void 0, void 0, function* () {
24275
+ this.element.dataset.clickEvent = "none";
24276
+ if (location.protocol !== "https:") {
24277
+ this.cancel(new Error("Recording only supported in Secure URLs"));
24278
+ return;
24279
+ }
24280
+ this.recorder = yield WebRTCService.startAudioSession();
24281
+ this.renderer = XNode.create("div", {
24282
+ class: css
24283
+ }, XNode.create("div", {
24284
+ "data-background-color": "white",
24285
+ "data-border-radius": "full",
24286
+ "data-layout": "vertical-flex-center-items"
24287
+ }, XNode.create("div", {
24288
+ text: Bind.oneWay(() => this.recorder.duration.toString())
24289
+ }), XNode.create(RoundButton, {
24290
+ icon: "fa-solid fa-stop fa-xl",
24291
+ "event-click": () => this.recorder.stop()
24292
+ })));
24293
+ const blob = yield this.recorder.start();
24294
+ this.element.dataset.clickEvent = "none";
24295
+ const url = URL.createObjectURL(blob);
24296
+ this.registerDisposable({
24297
+ dispose: () => {
24298
+ URL.revokeObjectURL(url);
24299
+ }
24300
+ });
24301
+ this.renderer = XNode.create("div", {
24302
+ class: css
24303
+ }, XNode.create("audio", {
24304
+ src: url,
24305
+ controls: true
24306
+ }), XNode.create("div", {
24307
+ "data-layout": "row"
24308
+ }, XNode.create(RoundButton, {
24309
+ icon: "button fa-solid fa-inbox-out fa-2xl",
24310
+ "event-click": () => this.uploadAudio(blob)
24311
+ }), XNode.create(RoundButton, {
24312
+ icon: "button fa-solid fa-circle-xmark fa-2xl",
24313
+ "event-click": () => this.cancel()
24314
+ })));
24315
+ });
24316
+ }
24317
+ uploadAudio(blob) {
24318
+ return __awaiter(this, void 0, void 0, function* () {
24319
+ const uploadService = this.app.resolve(LocalFileService);
24320
+ const dt = DateTime.now;
24321
+ const fileName = `${dt.year}-${dt.month + 1}-${dt.day}.mp4`;
24322
+ this.renderer = XNode.create("div", {
24323
+ class: css
24324
+ }, XNode.create("div", null, "Uploading... ", XNode.create("i", {
24325
+ class: "fa-solid fa-spinner fa-spin"
24326
+ }), " "));
24327
+ const file = yield uploadService.uploadFile(new File([blob], fileName, {
24328
+ type: blob.type
24329
+ }), {});
24330
+ this.close(file);
24331
+ });
24332
+ }
24333
+ });
24334
+ }
24335
+ };
24336
+ });
24337
+ //# sourceMappingURL=AudioRecorder.js.map
24338
+
24339
+ AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/audio/AudioRecorder");
24340
+
24341
+ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/style/styled", "@web-atoms/core/dist/web/controls/AtomControl", "../../../model/model", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dist/view-model/Action", "../../../common/controls/audio/AudioRecorder", "./service/ConversationService", "@web-atoms/web-controls/dist/basic/AtomRepeater", "@web-atoms/core/dist/core/InjectProperty", "@web-atoms/core/dist/core/AtomBinder"], function (_export, _context) {
23701
24342
  "use strict";
23702
24343
 
23703
- var __awaiter, XNode, styled, AtomControl, Bind, MiniComposeBox, css;
24344
+ var __awaiter, __decorate, __metadata, XNode, styled, AtomControl, AppFile, Email, Bind, Action, AudioRecorder, ConversationService, AtomRepeater, InjectProperty, AtomBinder, MiniComposeBox, css;
23704
24345
  _export("default", void 0);
23705
24346
  return {
23706
24347
  setters: [function (_tslib) {
23707
24348
  __awaiter = _tslib.__awaiter;
24349
+ __decorate = _tslib.__decorate;
24350
+ __metadata = _tslib.__metadata;
23708
24351
  }, function (_webAtomsCoreDistCoreXNode) {
23709
24352
  XNode = _webAtomsCoreDistCoreXNode.default;
23710
24353
  }, function (_webAtomsCoreDistStyleStyled) {
23711
24354
  styled = _webAtomsCoreDistStyleStyled.default;
23712
24355
  }, function (_webAtomsCoreDistWebControlsAtomControl) {
23713
24356
  AtomControl = _webAtomsCoreDistWebControlsAtomControl.AtomControl;
24357
+ }, function (_modelModel) {
24358
+ AppFile = _modelModel.AppFile;
24359
+ Email = _modelModel.Email;
23714
24360
  }, function (_webAtomsCoreDistCoreBind) {
23715
24361
  Bind = _webAtomsCoreDistCoreBind.default;
24362
+ }, function (_webAtomsCoreDistViewModelAction) {
24363
+ Action = _webAtomsCoreDistViewModelAction.default;
24364
+ }, function (_commonControlsAudioAudioRecorder) {
24365
+ AudioRecorder = _commonControlsAudioAudioRecorder.default;
24366
+ }, function (_serviceConversationService) {
24367
+ ConversationService = _serviceConversationService.default;
24368
+ }, function (_webAtomsWebControlsDistBasicAtomRepeater) {
24369
+ AtomRepeater = _webAtomsWebControlsDistBasicAtomRepeater.default;
24370
+ }, function (_webAtomsCoreDistCoreInjectProperty) {
24371
+ InjectProperty = _webAtomsCoreDistCoreInjectProperty.default;
24372
+ }, function (_webAtomsCoreDistCoreAtomBinder) {
24373
+ AtomBinder = _webAtomsCoreDistCoreAtomBinder.AtomBinder;
23716
24374
  }],
23717
24375
  execute: function () {
23718
24376
  css = styled.css`
@@ -23736,8 +24394,9 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
23736
24394
  _export("default", MiniComposeBox = class MiniComposeBox extends AtomControl {
23737
24395
  constructor(app, e) {
23738
24396
  super(app, e);
23739
- this.mailbox = null;
23740
- this.message = "";
24397
+ this.mailboxContact = null;
24398
+ this.draft = null;
24399
+ this.typedMessage = "";
23741
24400
  this.element.className = css;
23742
24401
  this.app.runAsync(() => this.init());
23743
24402
  }
@@ -23745,14 +24404,91 @@ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/di
23745
24404
  return __awaiter(this, void 0, void 0, function* () {
23746
24405
  this.render(XNode.create("div", null, XNode.create("textarea", {
23747
24406
  "data-element": "editor",
23748
- value: Bind.twoWaysImmediate(() => this.message)
23749
- }), XNode.create("button", {
24407
+ value: Bind.twoWaysImmediate(() => this.typedMessage)
24408
+ }), XNode.create("i", {
23750
24409
  "data-element": "send",
23751
- class: "fas fa-send"
24410
+ class: "fa-solid fa-microphone-lines mic",
24411
+ "event-click": () => this.sendAudioMessage(),
24412
+ "style-display": Bind.oneWay(() => !this.typedMessage)
24413
+ }), XNode.create("i", {
24414
+ "data-element": "send",
24415
+ class: "fa-solid fa-angle-double-right send",
24416
+ "style-display": Bind.oneWay(() => !!this.typedMessage),
24417
+ "event-click": () => this.sendMessage()
24418
+ }), XNode.create(AtomRepeater, {
24419
+ items: Bind.oneWay(() => {
24420
+ var _a;
24421
+ return (_a = this.draft) === null || _a === void 0 ? void 0 : _a.attachments;
24422
+ }),
24423
+ "data-layout": "flex-wrap-padding",
24424
+ itemRenderer: item => XNode.create("div", {
24425
+ "data-layout": "row"
24426
+ }, XNode.create("label", {
24427
+ text: item.name
24428
+ }))
23752
24429
  })));
23753
24430
  });
23754
24431
  }
24432
+ onChanged() {
24433
+ var _a;
24434
+ return __awaiter(this, void 0, void 0, function* () {
24435
+ if (!this.typedMessage) {
24436
+ return;
24437
+ }
24438
+ (_a = this.draft) !== null && _a !== void 0 ? _a : this.draft = Email.create({
24439
+ attachments: []
24440
+ });
24441
+ this.draft.mdBody = this.typedMessage;
24442
+ yield this.save();
24443
+ });
24444
+ }
24445
+ sendMessage() {
24446
+ throw new Error("Method not implemented.");
24447
+ }
24448
+ sendAudioMessage() {
24449
+ var _a;
24450
+ return __awaiter(this, void 0, void 0, function* () {
24451
+ const uploadedFile = yield AudioRecorder.show();
24452
+ (_a = this.draft) !== null && _a !== void 0 ? _a : this.draft = Email.create({
24453
+ attachments: []
24454
+ });
24455
+ this.draft.mdBody = this.typedMessage;
24456
+ this.addFile(uploadedFile);
24457
+ yield this.save();
24458
+ });
24459
+ }
24460
+ addFile({
24461
+ appFileID,
24462
+ url,
24463
+ file
24464
+ }) {
24465
+ var _a;
24466
+ var _b;
24467
+ (_a = (_b = this.draft).attachments) !== null && _a !== void 0 ? _a : _b.attachments = [];
24468
+ AtomBinder.refreshValue(this, "draft");
24469
+ this.draft.attachments.add(AppFile.create({
24470
+ appFileID,
24471
+ contentType: file.type,
24472
+ name: file.name,
24473
+ contentID: appFileID.toString(36),
24474
+ url
24475
+ }));
24476
+ }
24477
+ save() {
24478
+ return __awaiter(this, void 0, void 0, function* () {
24479
+ this.draft = yield this.conversationService.draft(Object.assign(Object.assign({}, this.mailboxContact), {
24480
+ email: this.draft
24481
+ }), true);
24482
+ });
24483
+ }
23755
24484
  });
24485
+ __decorate([InjectProperty, __metadata("design:type", ConversationService)], MiniComposeBox.prototype, "conversationService", void 0);
24486
+ __decorate([Action({
24487
+ onEvent: "input",
24488
+ defer: 500,
24489
+ blockMultipleExecution: true
24490
+ }), __metadata("design:type", Function), __metadata("design:paramtypes", []), __metadata("design:returntype", Promise)], MiniComposeBox.prototype, "onChanged", null);
24491
+ __decorate([Action({}), __metadata("design:type", Function), __metadata("design:paramtypes", []), __metadata("design:returntype", Promise)], MiniComposeBox.prototype, "sendAudioMessage", null);
23756
24492
  }
23757
24493
  };
23758
24494
  });
@@ -23867,6 +24603,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
23867
24603
  constructor() {
23868
24604
  super(...arguments);
23869
24605
  this.mails = [];
24606
+ this.draft = null;
23870
24607
  this.search = "";
23871
24608
  this.version = 1;
23872
24609
  }
@@ -23972,7 +24709,11 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
23972
24709
  icon: "fas fa-ban",
23973
24710
  label: "Block Sender"
23974
24711
  })));
23975
- this.footerRenderer = () => XNode.create(MiniComposeBox, null);
24712
+ this.draft = yield this.conversationService.getDraft(this.parameters);
24713
+ this.footerRenderer = () => XNode.create(MiniComposeBox, {
24714
+ mailboxContact: this.parameters,
24715
+ draft: this.draft
24716
+ });
23976
24717
  });
23977
24718
  }
23978
24719
  onClick(a, e) {
@@ -24023,6 +24764,7 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
24023
24764
  });
24024
24765
  }
24025
24766
  mailOptions(thread, ce) {
24767
+ var _a;
24026
24768
  return __awaiter(this, void 0, void 0, function* () {
24027
24769
  void InlinePopupControl.showPopup(ce.target, XNode.create("div", {
24028
24770
  "data-click-event": "none",
@@ -24039,6 +24781,10 @@ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "
24039
24781
  "data-click-event": "open-logs",
24040
24782
  icon: "fa-regular fa-clock-rotate-left",
24041
24783
  label: "Logs"
24784
+ }), ((_a = thread.email) === null || _a === void 0 ? void 0 : _a.status) === "draft" && XNode.create(MenuItem, {
24785
+ "data-click-event": "delete-draft",
24786
+ icon: "fa-regular fa-clock-rotate-left",
24787
+ label: "Delete Draft"
24042
24788
  })));
24043
24789
  });
24044
24790
  }
@@ -35786,23 +36532,24 @@ html, body {
35786
36532
  }
35787
36533
 
35788
36534
  * {
35789
- scrollbar-width: 5px;
36535
+ scrollbar-width: thin;
35790
36536
  scrollbar-color: var(--accent-color) white;
36537
+ }
35791
36538
 
35792
- &::-webkit-scrollbar {
35793
- width: 5px;
35794
- }
35795
- &::-webkit-scrollbar-track {
36539
+
36540
+ ::-webkit-scrollbar {
36541
+ width: 5px;
36542
+ }
36543
+ ::-webkit-scrollbar-track {
35796
36544
  background: white;
35797
- }
35798
- &::-webkit-scrollbar-thumb {
35799
- background-color: white;
35800
- border-radius: 20px;
35801
- border: 3px solid var(--accent-color);
35802
- }
36545
+ border-radius: 20px;
36546
+ }
36547
+ ::-webkit-scrollbar-thumb {
36548
+ background: var(--accent-color);
36549
+ border-radius: 20px;
35803
36550
  }
35804
36551
 
35805
- body {
36552
+ body {
35806
36553
  font-family: trebuchet ms, "Source Sans Pro";
35807
36554
  font-size: 16px;
35808
36555
  justify-content: stretch;