@social-mail/social-mail-client 1.8.279 → 1.8.280

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 (47) hide show
  1. package/dist/common/CDN.d.ts.map +1 -1
  2. package/dist/common/CDN.js +4 -1
  3. package/dist/common/CDN.js.map +1 -1
  4. package/dist/public/channel/ChannelApp.pack.js +4 -1
  5. package/dist/public/channel/ChannelApp.pack.js.map +1 -1
  6. package/dist/public/channel/ChannelApp.pack.min.js +1 -1
  7. package/dist/public/channel/ChannelApp.pack.min.js.map +1 -1
  8. package/dist/public/channel/controls/channel-post/ChannelPost.d.ts +1 -0
  9. package/dist/public/channel/controls/channel-post/ChannelPost.d.ts.map +1 -1
  10. package/dist/public/channel/controls/channel-post/ChannelPost.js.map +1 -1
  11. package/dist/public/channel/pages/BaseChannelPage.d.ts.map +1 -1
  12. package/dist/public/channel/pages/BaseChannelPage.js.map +1 -1
  13. package/dist/site-editor-app/SiteEditorApp.pack.js +4 -1
  14. package/dist/site-editor-app/SiteEditorApp.pack.js.map +1 -1
  15. package/dist/site-editor-app/SiteEditorApp.pack.min.js +1 -1
  16. package/dist/site-editor-app/SiteEditorApp.pack.min.js.map +1 -1
  17. package/dist/tsconfig.tsbuildinfo +1 -1
  18. package/package.json +1 -1
  19. package/src/common/CDN.ts +4 -1
  20. package/src/public/channel/controls/channel-post/ChannelPost.tsx +2 -1
  21. package/src/public/channel/pages/BaseChannelPage.tsx +1 -4
  22. package/dist/public/channel/controls/post-summary/PostSummary.d.ts +0 -17
  23. package/dist/public/channel/controls/post-summary/PostSummary.d.ts.map +0 -1
  24. package/dist/public/channel/controls/post-summary/PostSummary.global.css +0 -2
  25. package/dist/public/channel/controls/post-summary/PostSummary.global.css.map +0 -1
  26. package/dist/public/channel/controls/post-summary/PostSummary.js +0 -86
  27. package/dist/public/channel/controls/post-summary/PostSummary.js.map +0 -1
  28. package/dist/public/channel/controls/post-view/PostView.d.ts +0 -16
  29. package/dist/public/channel/controls/post-view/PostView.d.ts.map +0 -1
  30. package/dist/public/channel/controls/post-view/PostView.global.css +0 -2
  31. package/dist/public/channel/controls/post-view/PostView.global.css.map +0 -1
  32. package/dist/public/channel/controls/post-view/PostView.js +0 -88
  33. package/dist/public/channel/controls/post-view/PostView.js.map +0 -1
  34. package/dist/public/channel/pages/ChannelHomePage.d.ts +0 -18
  35. package/dist/public/channel/pages/ChannelHomePage.d.ts.map +0 -1
  36. package/dist/public/channel/pages/ChannelHomePage.js +0 -84
  37. package/dist/public/channel/pages/ChannelHomePage.js.map +0 -1
  38. package/dist/public/channel/pages/PublicChannelPage.d.ts +0 -25
  39. package/dist/public/channel/pages/PublicChannelPage.d.ts.map +0 -1
  40. package/dist/public/channel/pages/PublicChannelPage.js +0 -183
  41. package/dist/public/channel/pages/PublicChannelPage.js.map +0 -1
  42. package/src/public/channel/controls/post-summary/PostSummary.global.css +0 -162
  43. package/src/public/channel/controls/post-summary/PostSummary.tsx +0 -82
  44. package/src/public/channel/controls/post-view/PostView.global.css +0 -114
  45. package/src/public/channel/controls/post-view/PostView.tsx +0 -88
  46. package/src/public/channel/pages/ChannelHomePage.tsx +0 -69
  47. package/src/public/channel/pages/PublicChannelPage.tsx +0 -131
@@ -1,183 +0,0 @@
1
- System.register(["tslib", "@web-atoms/core/dist/core/InjectProperty", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "../BlogImageService", "../BlogService", "@web-atoms/core/dist/core/XNode", "../controls/blog-header/BlogHeader", "@web-atoms/core/dist/core/Bind", "../controls/RecentPosts", "../controls/TagCloud", "../controls/UpcomingEvents", "../controls/PostList", "../controls/post-view/PostView", "../UrlService", "../../../services/EntityService", "@web-atoms/core/dist/view-model/Action", "../../../common/Mailto", "../emoji/EmojiPopup", "@web-atoms/core/dist/web/core/AtomUI"], function (_export, _context) {
2
- "use strict";
3
-
4
- var __awaiter, __decorate, __metadata, InjectProperty, ContentPage, BlogImageService, BlogService, XNode, BlogHeader, Bind, RecentPosts, TagCloud, UpcomingEvents, PopularPosts, PostView, UrlService, EntityService, Action, Mailto, EmojiPopup, AncestorEnumerator, PublicChannelPage, commentIcon;
5
- _export("default", void 0);
6
- return {
7
- setters: [function (_tslib) {
8
- __awaiter = _tslib.__awaiter;
9
- __decorate = _tslib.__decorate;
10
- __metadata = _tslib.__metadata;
11
- }, function (_webAtomsCoreDistCoreInjectProperty) {
12
- InjectProperty = _webAtomsCoreDistCoreInjectProperty.default;
13
- }, function (_webAtomsWebControlsDistMobileAppMobileApp) {
14
- ContentPage = _webAtomsWebControlsDistMobileAppMobileApp.ContentPage;
15
- }, function (_BlogImageService) {
16
- BlogImageService = _BlogImageService.default;
17
- }, function (_BlogService) {
18
- BlogService = _BlogService.default;
19
- }, function (_webAtomsCoreDistCoreXNode) {
20
- XNode = _webAtomsCoreDistCoreXNode.default;
21
- }, function (_controlsBlogHeaderBlogHeader) {
22
- BlogHeader = _controlsBlogHeaderBlogHeader.default;
23
- }, function (_webAtomsCoreDistCoreBind) {
24
- Bind = _webAtomsCoreDistCoreBind.default;
25
- }, function (_controlsRecentPosts) {
26
- RecentPosts = _controlsRecentPosts.default;
27
- }, function (_controlsTagCloud) {
28
- TagCloud = _controlsTagCloud.default;
29
- }, function (_controlsUpcomingEvents) {
30
- UpcomingEvents = _controlsUpcomingEvents.default;
31
- }, function (_controlsPostList) {
32
- PopularPosts = _controlsPostList.default;
33
- }, function (_controlsPostViewPostView) {
34
- PostView = _controlsPostViewPostView.default;
35
- }, function (_UrlService) {
36
- UrlService = _UrlService.UrlService;
37
- }, function (_servicesEntityService) {
38
- EntityService = _servicesEntityService.default;
39
- }, function (_webAtomsCoreDistViewModelAction) {
40
- Action = _webAtomsCoreDistViewModelAction.default;
41
- }, function (_commonMailto) {
42
- Mailto = _commonMailto.Mailto;
43
- }, function (_emojiEmojiPopup) {
44
- EmojiPopup = _emojiEmojiPopup.default;
45
- }, function (_webAtomsCoreDistWebCoreAtomUI) {
46
- AncestorEnumerator = _webAtomsCoreDistWebCoreAtomUI.AncestorEnumerator;
47
- }],
48
- execute: function () {
49
- commentIcon = "💬";
50
- _export("default", PublicChannelPage = class PublicChannelPage extends ContentPage {
51
- constructor() {
52
- super(...arguments);
53
- this.search = "";
54
- this.tag = "";
55
- this.author = "";
56
- this.emails = [];
57
- this.email = null;
58
- }
59
- init() {
60
- return __awaiter(this, void 0, void 0, function* () {
61
- var _a;
62
- var _b;
63
- const {
64
- channel,
65
- slug
66
- } = this.parameters;
67
- this.channel = yield this.blogService.getChannel(void 0, channel, void 0);
68
- const {
69
- mailboxID: channelID
70
- } = this.channel;
71
- const emailID = UrlService.getEmailID(slug);
72
- this.email = yield this.blogService.getEmail({
73
- emailID,
74
- channelID,
75
- channel
76
- });
77
- document.title = this.email.subject + " - Social " + this.channel.emailAddress.emailAddress;
78
- (_a = (_b = this.email).engagements) !== null && _a !== void 0 ? _a : _b.engagements = [];
79
- this.emails = [this.email];
80
- this.renderer = XNode.create("section", {
81
- "data-blog-list": "blog-list"
82
- }, XNode.create(BlogHeader, {
83
- search: Bind.twoWaysImmediate(() => this.search),
84
- channel: this.channel
85
- }), XNode.create("section", {
86
- "data-width": "100%"
87
- }, XNode.create(PostView, {
88
- channel: this.channel,
89
- email: this.emails[0]
90
- })), XNode.create("aside", null, XNode.create(TagCloud, null), XNode.create(UpcomingEvents, {
91
- channel: this.channel
92
- }), XNode.create(PopularPosts, null), XNode.create(RecentPosts, null)), XNode.create("footer", null));
93
- this.resolve(EntityService).postPageReady();
94
- });
95
- }
96
- engagementClick({
97
- engagement
98
- }) {
99
- const emoji = engagement.engagement;
100
- this.reactAction(emoji);
101
- }
102
- reactAction(emoji) {
103
- const {
104
- email
105
- } = this;
106
- const {
107
- headerMessageID
108
- } = email;
109
- const {
110
- channel: {
111
- emailAddress: {
112
- emailAddress
113
- }
114
- }
115
- } = this;
116
- const subject = `${emoji}:${BigInt(email.emailID).toString(36)}:${headerMessageID}`;
117
- const link = Mailto.create({
118
- to: emailAddress,
119
- subject,
120
- body: emoji,
121
- inReplyTo: headerMessageID
122
- });
123
- this.element.dispatchEvent(new CustomEvent("shareLink", {
124
- detail: {
125
- link,
126
- shareTitle: `React ${emoji} Via`
127
- },
128
- bubbles: true
129
- }));
130
- }
131
- reactEmail(email, ce) {
132
- return __awaiter(this, void 0, void 0, function* () {
133
- var _a;
134
- const parentElement = (_a = AncestorEnumerator.findSelector(ce.target, "button,a")) !== null && _a !== void 0 ? _a : ce.target;
135
- const emoji = yield EmojiPopup.show(parentElement);
136
- this.reactAction(emoji);
137
- });
138
- }
139
- replyEmail(email, ce) {
140
- return __awaiter(this, void 0, void 0, function* () {
141
- const emoji = commentIcon;
142
- email = this.email;
143
- const {
144
- headerMessageID
145
- } = email;
146
- const {
147
- channel: {
148
- emailAddress: {
149
- emailAddress
150
- }
151
- }
152
- } = this;
153
- const subject = `${emoji}:${Number(email.emailID).toString(36)}:${headerMessageID}`;
154
- const link = Mailto.create({
155
- to: emailAddress,
156
- subject,
157
- inReplyTo: headerMessageID
158
- });
159
- this.element.dispatchEvent(new CustomEvent("shareLink", {
160
- detail: {
161
- link,
162
- shareTitle: "Add Comment Via"
163
- },
164
- bubbles: true
165
- }));
166
- });
167
- }
168
- });
169
- __decorate([InjectProperty, __metadata("design:type", BlogService)], PublicChannelPage.prototype, "blogService", void 0);
170
- __decorate([InjectProperty, __metadata("design:type", BlogImageService)], PublicChannelPage.prototype, "blogImageService", void 0);
171
- __decorate([Action({
172
- onEvent: "engagement-click"
173
- }), __metadata("design:type", Function), __metadata("design:paramtypes", [Object]), __metadata("design:returntype", void 0)], PublicChannelPage.prototype, "engagementClick", null);
174
- __decorate([Action({
175
- onEvent: "react-email"
176
- }), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, CustomEvent]), __metadata("design:returntype", Promise)], PublicChannelPage.prototype, "reactEmail", null);
177
- __decorate([Action({
178
- onEvent: "reply-email"
179
- }), __metadata("design:type", Function), __metadata("design:paramtypes", [Object, CustomEvent]), __metadata("design:returntype", Promise)], PublicChannelPage.prototype, "replyEmail", null);
180
- }
181
- };
182
- });
183
- //# sourceMappingURL=PublicChannelPage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["PublicChannelPage","commentIcon","_export","setters","_tslib","InjectProperty","_webAtomsCoreDistCoreInjectProperty","default","_webAtomsWebControlsDistMobileAppMobileApp","ContentPage","_BlogImageService","BlogImageService","_BlogService","BlogService","_webAtomsCoreDistCoreXNode","XNode","_controlsBlogHeaderBlogHeader","BlogHeader","_webAtomsCoreDistCoreBind","Bind","_controlsRecentPosts","RecentPosts","_controlsTagCloud","TagCloud","_controlsUpcomingEvents","UpcomingEvents","_controlsPostList","PopularPosts","_controlsPostViewPostView","PostView","_UrlService","UrlService","_servicesEntityService","EntityService","_webAtomsCoreDistViewModelAction","Action","_commonMailto","Mailto","_emojiEmojiPopup","EmojiPopup","_webAtomsCoreDistWebCoreAtomUI","AncestorEnumerator","execute","constructor","search","tag","author","emails","email","init","channel","slug","parameters","blogService","getChannel","mailboxID","channelID","emailID","getEmailID","getEmail","document","title","subject","emailAddress","_a","_b","engagements","renderer","create","twoWaysImmediate","resolve","postPageReady","engagementClick","engagement","emoji","reactAction","headerMessageID","BigInt","toString","link","to","body","inReplyTo","element","dispatchEvent","CustomEvent","detail","shareTitle","bubbles","reactEmail","ce","parentElement","findSelector","target","show","replyEmail","Number","__decorate","onEvent"],"sources":["../../../../src/public/channel/pages/PublicChannelPage.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,162 +0,0 @@
1
- post-summary {
2
- display: grid;
3
- grid-template-columns: 1fr 2fr auto;
4
- grid-template-rows: auto auto 1fr auto;
5
-
6
- padding-bottom: 10px;
7
- padding-right: 20px;
8
-
9
- border-bottom: solid 1px lightgray;
10
-
11
- max-height: 285px;
12
- height: 285px;
13
-
14
- overflow: hidden;
15
-
16
- margin-bottom: 10px;
17
-
18
- gap: 10px;
19
-
20
- row-gap: 20px;
21
-
22
- & > [data-element=preview] {
23
- grid-row: 1 / span 4;
24
- grid-column: 1;
25
- background-color: #343a400d;
26
- object-fit: contain;
27
- width: 275px;
28
- height: 275px;
29
- border: none;
30
- outline: none;
31
- text-decoration: none;
32
-
33
- border-radius: 10px;
34
-
35
- & > img {
36
- width: 100%;
37
- height: 100%;
38
- object-fit: contain;
39
- }
40
-
41
- }
42
-
43
- & > [data-element=preview-text] {
44
- grid-row: 1 / span 4;
45
- grid-column: 1;
46
- background-color: gray;
47
- width: 275px;
48
- max-height: 275px;
49
- height: 275px;
50
- border: none;
51
- outline: none;
52
- text-decoration: none;
53
- font-size: 40px;
54
- line-height: 50px;
55
- color: white;
56
- padding: 10px;
57
- border-radius: 10px;
58
- text-overflow: ellipsis;
59
- overflow:hidden;
60
- position: relative;
61
- &::after {
62
- position: absolute;
63
- left: 0;
64
- right: 0;
65
- top: 0;
66
- bottom: 0;
67
- content: "";
68
- pointer-events: none;
69
- background: linear-gradient(to top, rgba(255, 255, 255, 0) 1px, rgba(255, 255, 255, 0.5) 50px);
70
- }
71
- }
72
-
73
- & > [data-element=title] {
74
- grid-row: 2;
75
- grid-column: 2 / span 2;
76
- font-size: 1.5em;
77
- line-height: 1.2;
78
- text-decoration: none;
79
- margin: 0;
80
- & a {
81
- text-decoration: none;
82
- }
83
- }
84
-
85
- & > [data-element=date] {
86
- grid-row: 1;
87
- grid-column: 3;
88
- font-size: 0.70rem;
89
- line-height: 1;
90
- letter-spacing:0.05rem;
91
- margin: 0;
92
- }
93
-
94
- & > [data-element=author] {
95
- grid-row: 1;
96
- grid-column: 2;
97
- font-size: 0.70rem;
98
- line-height: 1;
99
- letter-spacing:0.05rem;
100
- margin: 0;
101
- }
102
-
103
- & > section {
104
- grid-row: 3;
105
- grid-column: 2 / span 2;
106
- position: relative;
107
- }
108
-
109
- & > footer {
110
- grid-row: 4;
111
- grid-column: 1 / span 3;
112
- }
113
-
114
- @media (max-width: 900px) {
115
-
116
-
117
- & {
118
- grid-template-columns: auto 1fr auto;
119
- grid-template-rows: auto 1fr auto auto auto auto;
120
- height: unset;
121
- max-height: unset;
122
- }
123
-
124
- & > [data-element=preview] {
125
- grid-column: 1 / span 3;
126
- grid-row: 2;
127
- max-height: 200px;
128
- width: unset;
129
- }
130
-
131
- & > [data-element=preview-text] {
132
- grid-column: 1 / span 3;
133
- width: 100%;
134
- grid-row: 4;
135
- }
136
-
137
- & > [data-element=title] {
138
- grid-column: 1 / span 3;
139
- grid-row: 3;
140
- }
141
-
142
- & > [data-element=date] {
143
- grid-column: 3;
144
- grid-row: 1;
145
- }
146
-
147
- & > [data-element=author] {
148
- grid-column: 1;
149
- grid-row: 1;
150
- }
151
-
152
- & > section {
153
- grid-column: 1 / span 3;
154
- grid-row: 5;
155
- }
156
-
157
- & > footer {
158
- grid-column: 1 / span 3;
159
- grid-row: 6;
160
- }
161
- }
162
- }
@@ -1,82 +0,0 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- import XNode from "@web-atoms/core/dist/core/XNode";
3
- import { IChannelEmail, IEmailEngagement, IMailbox } from "../../../../model/model";
4
- import { DateFormats } from "../../../../common/date/DateFormats";
5
- import { UrlService } from "../../UrlService";
6
- import loaderImage from "@social-mail/social-mail-client/content/images/gif/loader.gif";
7
- import Bind from "@web-atoms/core/dist/core/Bind";
8
- import BlogImageService from "../../BlogImageService";
9
-
10
- const commentIcon = "💬";
11
-
12
- import "./PostSummary.global.css";
13
-
14
-
15
- /* eslint-disable @typescript-eslint/no-namespace */
16
- declare global {
17
- namespace JSX {
18
- interface IntrinsicElements {
19
- "post-summary": any;
20
- }
21
- }
22
- }
23
-
24
- document.body.addEventListener("click", (e) => {
25
- let target = e.target as HTMLElement;
26
- do {
27
- const href = target.tagName === "POST-SUMMARY" && target.getAttribute("data-link");
28
- if (href) {
29
- location.href = href;
30
- return;
31
- }
32
- target = target.parentElement;
33
- } while(target);
34
- });
35
-
36
- export default function PostSummary ({
37
- channel = void 0 as IMailbox,
38
- mailboxEmail = void 0 as IChannelEmail,
39
- itemPath = void 0 as string,
40
- blogService = void 0 as BlogImageService
41
- }) {
42
-
43
- const { mailboxID, email, previewFile } = mailboxEmail;
44
- const { engagements = [] } = email;
45
-
46
- const isComment = email.parentID !== null;
47
-
48
- const href = UrlService.toBlogUrl({ mailbox: channel, ... mailboxEmail });
49
-
50
- return <post-summary
51
- data-comment={isComment}
52
- data-item-path={itemPath}>
53
- {
54
- previewFile
55
- ? <a data-element="preview" href={href}><img src={Bind.oneTimeAsync(() => blogService.getImage(mailboxEmail), loaderImage)}/></a>
56
- : <a data-element="preview-text" href={href} text={(isComment ? email.senderName : email.subject)?.trim()}></a>
57
- }
58
- <a data-element="title" href={href} text={ isComment ? email.senderName : email.subject}>
59
- </a>
60
- <h6 data-element="date" href={href} text={DateFormats.relative.short(email.dateSent)}/>
61
- {!isComment && <h5 href={href} data-element="author" text={email.senderName}/> }
62
- <section>
63
- <section>
64
- {email.textBody.substring(0, 110).trim()}
65
- {"\xa0"}
66
- <a href={href}>
67
- Read More ...
68
- {/* <span lang="en">Read More...</span> */}
69
- {/* <span lang="hi">अधिक जानें...</span> */}
70
- </a>
71
- </section>
72
- </section>
73
- <footer>
74
- { ... engagements.map((x: IEmailEngagement) =>
75
- <span
76
- data-click-event={ x.engagement === commentIcon ? "view-comments" : "none" }
77
- data-element="engagements"
78
- title={`View all ${x.engagement} ${x.count}`}
79
- text={`${x.engagement} ${x.count}`}/>)}
80
- </footer>
81
- </post-summary>;
82
- }
@@ -1,114 +0,0 @@
1
- post-view {
2
- display: grid;
3
- grid-template-columns: 1fr auto;
4
- grid-template-rows: auto auto auto 1fr auto auto auto;
5
-
6
- padding-top: 10px;
7
- padding-bottom: 10px;
8
-
9
- row-gap: 10px;
10
-
11
- & > [data-element=author] {
12
- grid-row: 1;
13
- grid-column: 1;
14
- margin: 0;
15
- font-weight: normal;
16
- font-size: 0.8rem;
17
- line-height: 1;
18
- letter-spacing: 0.05rem;
19
- }
20
-
21
- & > [data-element=date] {
22
- grid-row: 1;
23
- grid-column: 2;
24
- margin: 0;
25
- font-weight: normal;
26
- font-size: 0.8rem;
27
- line-height: 1;
28
- letter-spacing: 0.05rem;
29
- }
30
-
31
- & > [data-element=title] {
32
- grid-row: 2;
33
- grid-column: 1 / span 2;
34
- margin: 0;
35
- font-weight: normal;
36
- font-size: 1.65rem;
37
- line-height: 1.2;
38
- }
39
-
40
- & > [data-element=media] {
41
- grid-row: 3;
42
- grid-column: 1/ span 2;
43
- display: grid;
44
- background-color: #343a400d;
45
- border-radius: 20px;
46
- overflow: hidden;
47
- & img, & video {
48
- max-height: 70vh;
49
- }
50
- & [data-element=preview] {
51
- display: grid;
52
- width: 100%;
53
- & > * {
54
- place-self: center;
55
- max-width: 100%;
56
- }
57
- }
58
- & > carousel-slider {
59
- place-self: stretch;
60
- }
61
- }
62
-
63
- &[has-poster] > [data-element=media] {
64
- grid-row: 5;
65
- grid-column: 1 / span 3;
66
- }
67
-
68
- & > [data-element=content] {
69
- grid-row: 4;
70
- grid-column: 1 / span 2;
71
- }
72
-
73
- & > footer {
74
- grid-row: 6;
75
- padding: 10px;
76
- grid-column: 1/ span 2;
77
- background-color: canvas;
78
- color: canvastext;
79
- display: flex;
80
- gap: 5px;
81
- flex-wrap: wrap;
82
-
83
- & > [data-element=engage] {
84
- border-radius: 9999px;
85
- background-color: var(--accent-color);
86
- color: var(--accent-text-color);
87
- display: flex;
88
- flex-direction: row;
89
- align-items: center;
90
- gap: 10px;
91
- padding: 2px;
92
- padding-left: 10px;
93
- padding-right: 10px;
94
- & > inline-svg {
95
- width: 16px;
96
- height: 16px;
97
- }
98
- }
99
-
100
- & > [data-element=engagements] {
101
- border-radius: 9999px;
102
- padding: 2px;
103
- padding-left: 10px;
104
- padding-right: 10px;
105
- border: solid 1px lightgray;
106
- cursor: pointer;
107
- }
108
- }
109
-
110
- & > [data-element=comments], & post-comments {
111
- grid-row: 7;
112
- }
113
-
114
- }
@@ -1,88 +0,0 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- /* eslint-disable @typescript-eslint/no-namespace */
3
- import XNode from "@web-atoms/core/dist/core/XNode";
4
- import { IEmail, IEmailEngagement, IMailbox } from "../../../../model/model";
5
- import { DateFormats } from "../../../../common/date/DateFormats";
6
- import { UMD } from "@web-atoms/core/dist/core/types";
7
- import { renderMailPromise } from "../../../../web/page/mails/service/ConversationService";
8
- import MediaCarousel from "../MediaCarousel";
9
-
10
- import "./PostView.global.css";
11
-
12
- declare global {
13
- namespace JSX {
14
- interface IntrinsicElements {
15
- "share-button": any;
16
- "post-view": any;
17
- }
18
- }
19
- }
20
-
21
- const commentIcon = "💬";
22
-
23
- export default function PostView ({
24
- email = void 0 as IEmail,
25
- channel = void 0 as IMailbox,
26
- itemPath = void 0 as string
27
- }) {
28
- const { engagements = [] } = email;
29
-
30
- const isComment = email.parentID !== null;
31
-
32
- return <post-view
33
- data-element="blog-item"
34
- data-comment={isComment}
35
- data-item-path={itemPath}
36
- data-msg-container="true"
37
- >
38
- <h4 data-element="title">
39
- <label text={ isComment ? email.senderName : email.subject}/>
40
- </h4>
41
- <h6 data-element="date" text={DateFormats.relative.short(email.dateSent)}/>
42
- {!isComment && <h5 data-element="author" text={email.senderName}/> }
43
- <section
44
- data-element="content">
45
- { !email.parentID
46
- ? <section { ... renderMailPromise({ email })}/>
47
- : <section text={email.textBody}/>
48
- }
49
- </section>
50
- <MediaCarousel email={email}/>
51
- <footer>
52
- <button
53
- data-element="engage"
54
- data-click-event="react-email"
55
- >
56
- <inline-svg
57
- attr-src={UMD.resolvePath("@social-mail/social-mail-client/content/images/icons/face-plus.svg")}
58
- style-max-height="15px"
59
- title="React"/>
60
- </button>
61
- <button
62
- data-element="engage"
63
- data-click-event="reply-email"
64
- >
65
- <inline-svg
66
- attr-src={UMD.resolvePath("@social-mail/social-mail-client/content/images/icons/comment-plus.svg")}
67
- style-max-height="15px"
68
- title="React"/>
69
- Reply
70
- </button>
71
- { ... engagements.map((x: IEmailEngagement, index) =>
72
- <span
73
- data-click-event={ x.engagement === commentIcon ? "view-comments" : "engagement-click" }
74
- data-element="engagements"
75
- data-item-path={`email:$, engagement: $.engagements.${index}`}
76
- title={`View all ${x.engagement} ${x.count}`}
77
- text={`${x.engagement} ${x.count}`}/>)}
78
- { !email.parentID && <share-button
79
- title={email.subject}
80
- href={location.href}><i class="fas fa-share"/> Share</share-button> }
81
- </footer>
82
-
83
- <section data-element="comments">
84
- { ... (email.children ?? []).map((c, i) => <PostView itemPath={ `${ itemPath ? itemPath : "$" }.children.${i}` } email={c} />) }
85
- </section>
86
-
87
- </post-view>;
88
- }