@social-mail/social-mail-client 1.2.33 → 1.2.35

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 (95) hide show
  1. package/content/modules/monaco/monaco.html +57 -5
  2. package/dist/admin/AdminAppIndex.pack.js +336 -150
  3. package/dist/admin/AdminAppIndex.pack.js.map +1 -1
  4. package/dist/admin/AdminAppIndex.pack.min.js +7 -7
  5. package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
  6. package/dist/code-editor/CodeEditorPage.d.ts +1 -0
  7. package/dist/code-editor/CodeEditorPage.d.ts.map +1 -1
  8. package/dist/code-editor/CodeEditorPage.js +12 -18
  9. package/dist/code-editor/CodeEditorPage.js.map +1 -1
  10. package/dist/code-editor/CodeSnippetPage.d.ts +19 -0
  11. package/dist/code-editor/CodeSnippetPage.d.ts.map +1 -0
  12. package/dist/code-editor/CodeSnippetPage.js +98 -0
  13. package/dist/code-editor/CodeSnippetPage.js.map +1 -0
  14. package/dist/code-editor/ICodeSnippet.d.ts +6 -0
  15. package/dist/code-editor/ICodeSnippet.d.ts.map +1 -0
  16. package/dist/code-editor/ICodeSnippet.js +9 -0
  17. package/dist/code-editor/ICodeSnippet.js.map +1 -0
  18. package/dist/code-editor/MonacoService.d.ts +20 -0
  19. package/dist/code-editor/MonacoService.d.ts.map +1 -0
  20. package/dist/code-editor/MonacoService.js +120 -0
  21. package/dist/code-editor/MonacoService.js.map +1 -0
  22. package/dist/code-editor/MonaoEditor.d.ts +0 -19
  23. package/dist/code-editor/MonaoEditor.d.ts.map +1 -1
  24. package/dist/code-editor/MonaoEditor.js +3 -111
  25. package/dist/code-editor/MonaoEditor.js.map +1 -1
  26. package/dist/public/channel/BlogService.d.ts +15 -0
  27. package/dist/public/channel/BlogService.d.ts.map +1 -0
  28. package/dist/public/channel/BlogService.js +69 -0
  29. package/dist/public/channel/BlogService.js.map +1 -0
  30. package/dist/public/channel/ChannelView.d.ts +13 -0
  31. package/dist/public/channel/ChannelView.d.ts.map +1 -0
  32. package/dist/public/channel/ChannelView.js +80 -0
  33. package/dist/public/channel/ChannelView.js.map +1 -0
  34. package/dist/public/channel/ChannelView.pack.js +17831 -0
  35. package/dist/public/channel/ChannelView.pack.js.map +1 -0
  36. package/dist/public/channel/ChannelView.pack.min.js +576 -0
  37. package/dist/public/channel/ChannelView.pack.min.js.map +1 -0
  38. package/dist/public/channel/channelViewStyle.d.ts +2 -0
  39. package/dist/public/channel/channelViewStyle.d.ts.map +1 -0
  40. package/dist/public/channel/channelViewStyle.js +53 -0
  41. package/dist/public/channel/channelViewStyle.js.map +1 -0
  42. package/dist/services/email/EmailContentDownloader.d.ts +6 -0
  43. package/dist/services/email/EmailContentDownloader.d.ts.map +1 -0
  44. package/dist/services/email/EmailContentDownloader.js +44 -0
  45. package/dist/services/email/EmailContentDownloader.js.map +1 -0
  46. package/dist/site-editor/editor/SelectedElement.d.ts +1 -0
  47. package/dist/site-editor/editor/SelectedElement.d.ts.map +1 -1
  48. package/dist/site-editor/editor/SelectedElement.js +11 -1
  49. package/dist/site-editor/editor/SelectedElement.js.map +1 -1
  50. package/dist/site-editor/editor/WebSitePageEditor.d.ts.map +1 -1
  51. package/dist/site-editor/editor/WebSitePageEditor.js.map +1 -1
  52. package/dist/site-editor/properties/Properties.d.ts.map +1 -1
  53. package/dist/site-editor/properties/Properties.js +5 -3
  54. package/dist/site-editor/properties/Properties.js.map +1 -1
  55. package/dist/site-editor/properties/controls/PropertyEditor.d.ts +6 -0
  56. package/dist/site-editor/properties/controls/PropertyEditor.d.ts.map +1 -1
  57. package/dist/site-editor/properties/controls/PropertyEditor.js +21 -3
  58. package/dist/site-editor/properties/controls/PropertyEditor.js.map +1 -1
  59. package/dist/site-editor/properties/groups/AttributeEditor.d.ts +2 -0
  60. package/dist/site-editor/properties/groups/AttributeEditor.d.ts.map +1 -0
  61. package/dist/site-editor/properties/groups/AttributeEditor.js +34 -0
  62. package/dist/site-editor/properties/groups/AttributeEditor.js.map +1 -0
  63. package/dist/tsconfig.tsbuildinfo +1 -1
  64. package/dist/web/AppIndex.pack.js +420 -234
  65. package/dist/web/AppIndex.pack.js.map +1 -1
  66. package/dist/web/AppIndex.pack.min.js +8 -8
  67. package/dist/web/AppIndex.pack.min.js.map +1 -1
  68. package/dist/web/page/mails/mini-compose/Insert.d.ts.map +1 -1
  69. package/dist/web/page/mails/mini-compose/Insert.js +16 -3
  70. package/dist/web/page/mails/mini-compose/Insert.js.map +1 -1
  71. package/dist/web/page/mails/mini-compose/MiniComposeBox.d.ts.map +1 -1
  72. package/dist/web/page/mails/mini-compose/MiniComposeBox.js +8 -0
  73. package/dist/web/page/mails/mini-compose/MiniComposeBox.js.map +1 -1
  74. package/dist/web/page/mails/service/ConversationService.js +1 -1
  75. package/dist/web/page/mails/service/ConversationService.js.map +1 -1
  76. package/index.js +7 -1
  77. package/package.json +1 -1
  78. package/src/code-editor/CodeEditorPage.tsx +14 -8
  79. package/src/code-editor/CodeSnippetPage.tsx +78 -0
  80. package/src/code-editor/ICodeSnippet.ts +5 -0
  81. package/src/code-editor/MonacoService.ts +112 -0
  82. package/src/code-editor/MonaoEditor.tsx +89 -112
  83. package/src/monaco.d.ts +9124 -0
  84. package/src/public/channel/BlogService.ts +50 -0
  85. package/src/public/channel/ChannelView.tsx +76 -0
  86. package/src/public/channel/channelViewStyle.ts +42 -0
  87. package/src/services/email/EmailContentDownloader.ts +33 -0
  88. package/src/site-editor/editor/SelectedElement.tsx +12 -1
  89. package/src/site-editor/editor/WebSitePageEditor.tsx +0 -2
  90. package/src/site-editor/properties/Properties.tsx +2 -1
  91. package/src/site-editor/properties/controls/PropertyEditor.tsx +16 -3
  92. package/src/site-editor/properties/groups/AttributeEditor.tsx +20 -0
  93. package/src/web/page/mails/mini-compose/Insert.tsx +11 -1
  94. package/src/web/page/mails/mini-compose/MiniComposeBox.tsx +5 -0
  95. package/src/web/page/mails/service/ConversationService.tsx +1 -1
@@ -0,0 +1,69 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/di/DISingleton", "@web-atoms/core/dist/di/Inject", "../../services/EntityService", "../../model/model", "../../common/Sql", "../../services/email/EmailContentDownloader"], function (_export, _context) {
2
+ "use strict";
3
+
4
+ var __awaiter, __decorate, __metadata, DISingleton, Inject, EntityService, Email, Mailbox, Sql, EmailContentDownloader, BlogService;
5
+ return {
6
+ setters: [function (_tslib) {
7
+ __awaiter = _tslib.__awaiter;
8
+ __decorate = _tslib.__decorate;
9
+ __metadata = _tslib.__metadata;
10
+ }, function (_webAtomsCoreDistDiDISingleton) {
11
+ DISingleton = _webAtomsCoreDistDiDISingleton.default;
12
+ }, function (_webAtomsCoreDistDiInject) {
13
+ Inject = _webAtomsCoreDistDiInject.Inject;
14
+ }, function (_servicesEntityService) {
15
+ EntityService = _servicesEntityService.default;
16
+ }, function (_modelModel) {
17
+ Email = _modelModel.Email;
18
+ Mailbox = _modelModel.Mailbox;
19
+ }, function (_commonSql) {
20
+ Sql = _commonSql.Sql;
21
+ }, function (_servicesEmailEmailContentDownloader) {
22
+ EmailContentDownloader = _servicesEmailEmailContentDownloader.default;
23
+ }],
24
+ execute: function () {
25
+ BlogService = class BlogService {
26
+ getEmails({
27
+ channelID = 0,
28
+ search = "",
29
+ start = 0,
30
+ size = 10,
31
+ cancelToken
32
+ }) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ let q = this.entityService.query(Email, "channelEmails", channelID);
35
+ if (search) {
36
+ q = q.where({
37
+ search
38
+ }, p => x => Sql.text.includes(x.textBody, p.search));
39
+ }
40
+ const emails = yield q.include(x => [x.attachments]).toPagedList({
41
+ start,
42
+ size,
43
+ cancelToken
44
+ });
45
+ const tasks = [];
46
+ for (const iterator of emails.items) {
47
+ if (!iterator.htmlBody) {
48
+ tasks.push(this.downloader.download(iterator));
49
+ }
50
+ }
51
+ yield Promise.all(tasks);
52
+ return emails;
53
+ });
54
+ }
55
+ getChannelID(emailAddress) {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ const c = yield this.entityService.query(Mailbox, "channels", emailAddress).firstOrDefault();
58
+ return c.mailboxID;
59
+ });
60
+ }
61
+ };
62
+ __decorate([Inject, __metadata("design:type", EntityService)], BlogService.prototype, "entityService", void 0);
63
+ __decorate([Inject, __metadata("design:type", EmailContentDownloader)], BlogService.prototype, "downloader", void 0);
64
+ BlogService = __decorate([DISingleton()], BlogService);
65
+ _export("default", BlogService);
66
+ }
67
+ };
68
+ });
69
+ //# sourceMappingURL=BlogService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DISingleton","_webAtomsCoreDistDiDISingleton","default","_webAtomsCoreDistDiInject","Inject","_servicesEntityService","EntityService","_modelModel","Email","Mailbox","_commonSql","Sql","_servicesEmailEmailContentDownloader","EmailContentDownloader","execute","BlogService","getEmails","channelID","search","start","size","cancelToken","q","entityService","query","where","p","x","text","includes","textBody","emails","include","attachments","toPagedList","tasks","iterator","items","htmlBody","push","downloader","download","Promise","all","getChannelID","emailAddress","c","firstOrDefault","mailboxID","__decorate","_export"],"sources":["../../../src/public/channel/BlogService.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;MAAOA,WAAW,GAAAC,8BAAA,CAAAC,OAAA;IAAA,aAAAC,yBAAA;MACTC,MAAM,GAAAD,yBAAA,CAANC,MAAM;IAAA,aAAAC,sBAAA;MACRC,aAAa,GAAAD,sBAAA,CAAAH,OAAA;IAAA,aAAAK,WAAA;MACXC,KAAK,GAAAD,WAAA,CAALC,KAAK;MAAEC,OAAO,GAAAF,WAAA,CAAPE,OAAO;IAAA,aAAAC,UAAA;MACdC,GAAG,GAAAD,UAAA,CAAHC,GAAG;IAAA,aAAAC,oCAAA;MAELC,sBAAsB,GAAAD,oCAAA,CAAAV,OAAA;IAAA;IAAAY,OAAA,WAAAA,CAAA;MAGRC,WAAW,GAAjB,MAAMA,WAAW;QAQtBC,SAASA,CAAC;UACZC,SAAS,GAAG,CAAC;UACbC,MAAM,GAAG,EAAE;UACXC,KAAK,GAAG,CAAC;UACTC,IAAI,GAAG,EAAE;UACTC;QAAW,CACd;;YACG,IAAIC,CAAC,GAAG,IAAI,CAACC,aAAa,CAACC,KAAK,CAAChB,KAAK,EAAE,eAAe,EAAES,SAAS,CAAC;YACnE,IAAIC,MAAM,EAAE;cACRI,CAAC,GAAGA,CAAC,CAACG,KAAK,CAAC;gBAAEP;cAAM,CAAE,EAAGQ,CAAC,IAAMC,CAAC,IAAKhB,GAAG,CAACiB,IAAI,CAACC,QAAQ,CAACF,CAAC,CAACG,QAAQ,EAAEJ,CAAC,CAACR,MAAM,CAAC,CAAC;;YAElF,MAAMa,MAAM,GAAG,MAAMT,CAAC,CACjBU,OAAO,CAAEL,CAAC,IAAK,CAACA,CAAC,CAACM,WAAW,CAAC,CAAC,CAC/BC,WAAW,CAAC;cAAEf,KAAK;cAAEC,IAAI;cAAEC;YAAW,CAAE,CAAC;YAE9C,MAAMc,KAAK,GAAG,EAAE;YAEhB,KAAK,MAAMC,QAAQ,IAAIL,MAAM,CAACM,KAAK,EAAE;cACjC,IAAI,CAACD,QAAQ,CAACE,QAAQ,EAAE;gBACpBH,KAAK,CAACI,IAAI,CAAC,IAAI,CAACC,UAAU,CAACC,QAAQ,CAACL,QAAQ,CAAC,CAAC;;;YAGtD,MAAMM,OAAO,CAACC,GAAG,CAACR,KAAK,CAAC;YACxB,OAAOJ,MAAM;UACjB,CAAC;;QAEKa,YAAYA,CAACC,YAAiB;;YAChC,MAAMC,CAAC,GAAG,MAAM,IAAI,CAACvB,aAAa,CAACC,KAAK,CAACf,OAAO,EAAE,UAAU,EAAEoC,YAAY,CAAC,CACtEE,cAAc,EAAE;YACrB,OAAOD,CAAC,CAACE,SAAS;UACtB,CAAC;;OAEJ;MAtCGC,UAAA,EAAC7C,MAAM,E,0BACQE,aAAa,E,iDAAC;MAE7B2C,UAAA,EAAC7C,MAAM,E,0BACKS,sBAAsB,E,8CAAC;MANlBE,WAAW,GAAAkC,UAAA,EAD/BjD,WAAW,EAAE,C,EACOe,WAAW,CAwC/B;MAAAmC,OAAA,YAxCoBnC,WAAW;IAAA;EAAA;AAAA"}
@@ -0,0 +1,13 @@
1
+ import { AtomControl } from "@web-atoms/core/dist/web/controls/AtomControl";
2
+ import "../../style/GlobalStyle";
3
+ import { IEmail } from "../../model/model";
4
+ import BlogService from "./BlogService";
5
+ export default class ChannelView extends AtomControl {
6
+ blogService: BlogService;
7
+ search: string;
8
+ channelID: number;
9
+ mails: IEmail[];
10
+ constructor(app: any, e?: HTMLElement);
11
+ init(): Promise<void>;
12
+ }
13
+ //# sourceMappingURL=ChannelView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChannelView.d.ts","sourceRoot":"","sources":["../../../src/public/channel/ChannelView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAC5E,OAAO,yBAAyB,CAAC;AAOjC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,WAAW,MAAM,eAAe,CAAC;AAKxC,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IAGhD,WAAW,EAAE,WAAW,CAAC;IAEzB,MAAM,SAAM;IAEZ,SAAS,SAAK;IAEd,KAAK,WAAkB;gBAEX,GAAG,KAAA,EAAE,CAAC,cAAoC;IAKhD,IAAI;CA4Cb"}
@@ -0,0 +1,80 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/web/controls/AtomControl", "../../style/GlobalStyle", "@web-atoms/core/dist/core/InjectProperty", "@web-atoms/core/dist/core/XNode", "./channelViewStyle", "@web-atoms/core/dist/core/Bind", "@web-atoms/web-controls/dist/basic/AtomRepeater", "../../common/controls/repeater/InfiniteRepeater", "./BlogService", "@web-atoms/core/dist/Pack", "../../web/page/mails/service/ConversationService"], function (_export, _context) {
2
+ "use strict";
3
+
4
+ var __awaiter, __decorate, __metadata, AtomControl, InjectProperty, XNode, channelViewStyle, Bind, AtomRepeater, InfiniteRepeater, BlogService, Pack, renderMail, ChannelView;
5
+ return {
6
+ setters: [function (_tslib) {
7
+ __awaiter = _tslib.__awaiter;
8
+ __decorate = _tslib.__decorate;
9
+ __metadata = _tslib.__metadata;
10
+ }, function (_webAtomsCoreDistWebControlsAtomControl) {
11
+ AtomControl = _webAtomsCoreDistWebControlsAtomControl.AtomControl;
12
+ }, function (_styleGlobalStyle) {}, function (_webAtomsCoreDistCoreInjectProperty) {
13
+ InjectProperty = _webAtomsCoreDistCoreInjectProperty.default;
14
+ }, function (_webAtomsCoreDistCoreXNode) {
15
+ XNode = _webAtomsCoreDistCoreXNode.default;
16
+ }, function (_channelViewStyle) {
17
+ channelViewStyle = _channelViewStyle.channelViewStyle;
18
+ }, function (_webAtomsCoreDistCoreBind) {
19
+ Bind = _webAtomsCoreDistCoreBind.default;
20
+ }, function (_webAtomsWebControlsDistBasicAtomRepeater) {
21
+ AtomRepeater = _webAtomsWebControlsDistBasicAtomRepeater.default;
22
+ }, function (_commonControlsRepeaterInfiniteRepeater) {
23
+ InfiniteRepeater = _commonControlsRepeaterInfiniteRepeater.default;
24
+ }, function (_BlogService) {
25
+ BlogService = _BlogService.default;
26
+ }, function (_webAtomsCoreDistPack) {
27
+ Pack = _webAtomsCoreDistPack.default;
28
+ }, function (_webPageMailsServiceConversationService) {
29
+ renderMail = _webPageMailsServiceConversationService.renderMail;
30
+ }],
31
+ execute: function () {
32
+ ChannelView = class ChannelView extends AtomControl {
33
+ constructor(app, e = document.createElement("section")) {
34
+ super(app, e);
35
+ this.search = "";
36
+ this.channelID = 0;
37
+ this.mails = [];
38
+ this.runAfterInit(() => this.app.runAsync(() => this.init()));
39
+ }
40
+ init() {
41
+ var _a;
42
+ return __awaiter(this, void 0, void 0, function* () {
43
+ const {
44
+ channelID,
45
+ emailAddress
46
+ } = (_a = window.socialMail) !== null && _a !== void 0 ? _a : {};
47
+ this.channelID = channelID || (yield this.blogService.getChannelID(emailAddress));
48
+ this.renderer = XNode.create("div", {
49
+ "data-layout": "flex-center"
50
+ }, XNode.create("span", {
51
+ text: "..."
52
+ }));
53
+ this.element.className = channelViewStyle;
54
+ this.renderer = XNode.create("section", null, XNode.create("header", null, XNode.create("input", {
55
+ placeholder: "Search...",
56
+ value: Bind.twoWaysImmediate(() => this.search)
57
+ })), XNode.create("section", null, XNode.create(AtomRepeater, Object.assign({
58
+ items: this.mails
59
+ }, InfiniteRepeater.pagedItems(start => (c, e, cancelToken) => this.blogService.getEmails({
60
+ channelID: this.channelID,
61
+ start,
62
+ search: this.search,
63
+ cancelToken
64
+ })), {
65
+ itemRenderer: email => {
66
+ return XNode.create("div", null, XNode.create("div", Object.assign({}, renderMail({
67
+ email
68
+ }))));
69
+ }
70
+ }))), XNode.create("aside", null, XNode.create(AtomRepeater, null)), XNode.create("footer", null));
71
+ });
72
+ }
73
+ };
74
+ __decorate([InjectProperty, __metadata("design:type", BlogService)], ChannelView.prototype, "blogService", void 0);
75
+ ChannelView = __decorate([Pack, __metadata("design:paramtypes", [Object, Object])], ChannelView);
76
+ _export("default", ChannelView);
77
+ }
78
+ };
79
+ });
80
+ //# sourceMappingURL=ChannelView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AtomControl","_webAtomsCoreDistWebControlsAtomControl","_styleGlobalStyle","_webAtomsCoreDistCoreInjectProperty","InjectProperty","default","_webAtomsCoreDistCoreXNode","XNode","_channelViewStyle","channelViewStyle","_webAtomsCoreDistCoreBind","Bind","_webAtomsWebControlsDistBasicAtomRepeater","AtomRepeater","_commonControlsRepeaterInfiniteRepeater","InfiniteRepeater","_BlogService","BlogService","_webAtomsCoreDistPack","Pack","_webPageMailsServiceConversationService","renderMail","execute","ChannelView","constructor","app","e","document","createElement","search","channelID","mails","runAfterInit","runAsync","init","emailAddress","_a","window","socialMail","blogService","getChannelID","renderer","create","text","element","className","placeholder","value","twoWaysImmediate","Object","assign","items","pagedItems","start","c","cancelToken","getEmails","itemRenderer","email","__decorate","_export"],"sources":["../../../src/public/channel/ChannelView.tsx"],"sourcesContent":[null],"mappings":"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"}