@social-mail/social-mail-client 1.0.1 → 1.0.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 (120) hide show
  1. package/README.md +1 -91
  2. package/dist/admin/Admin.js +50 -2
  3. package/dist/admin/Admin.js.map +1 -1
  4. package/dist/admin/commands/AdminCommands.js +41 -0
  5. package/dist/admin/commands/AdminCommands.js.map +1 -1
  6. package/dist/admin/drawer/AdminDrawer.js +40 -2
  7. package/dist/admin/drawer/AdminDrawer.js.map +1 -1
  8. package/dist/admin/pages/config/ConfigPage.js +18 -0
  9. package/dist/admin/pages/config/ConfigPage.js.map +1 -0
  10. package/dist/admin/pages/domains/ChooseDomainPage.js +86 -0
  11. package/dist/admin/pages/domains/ChooseDomainPage.js.map +1 -0
  12. package/dist/admin/pages/domains/DomainListPage.js +71 -0
  13. package/dist/admin/pages/domains/DomainListPage.js.map +1 -0
  14. package/dist/admin/pages/domains/EditDomainPage.js +79 -0
  15. package/dist/admin/pages/domains/EditDomainPage.js.map +1 -0
  16. package/dist/admin/pages/domains/choose/ChooseDomainPage.js +86 -0
  17. package/dist/admin/pages/domains/choose/ChooseDomainPage.js.map +1 -0
  18. package/dist/admin/pages/domains/edit/EditDomainPage.js +104 -0
  19. package/dist/admin/pages/domains/edit/EditDomainPage.js.map +1 -0
  20. package/dist/admin/pages/domains/services/AdminDomainService.js +56 -0
  21. package/dist/admin/pages/domains/services/AdminDomainService.js.map +1 -0
  22. package/dist/admin/pages/home/AdminHome.js +18 -0
  23. package/dist/admin/pages/home/AdminHome.js.map +1 -0
  24. package/dist/admin/pages/users/EditUserPage.js +105 -0
  25. package/dist/admin/pages/users/EditUserPage.js.map +1 -0
  26. package/dist/admin/pages/users/UserListPage.js +82 -0
  27. package/dist/admin/pages/users/UserListPage.js.map +1 -0
  28. package/dist/admin/pages/users/services/AdminUserService.js +57 -0
  29. package/dist/admin/pages/users/services/AdminUserService.js.map +1 -0
  30. package/dist/common/SocialMailApp.js +14 -0
  31. package/dist/common/SocialMailApp.js.map +1 -0
  32. package/dist/common/Sql.js +12 -0
  33. package/dist/common/Sql.js.map +1 -0
  34. package/dist/common/commands/CommonCommands.js +18 -0
  35. package/dist/common/commands/CommonCommands.js.map +1 -0
  36. package/dist/common/controls/buttons/IconButton.js +51 -0
  37. package/dist/common/controls/buttons/IconButton.js.map +1 -0
  38. package/dist/common/controls/form/RequiredFormField.js +57 -0
  39. package/dist/common/controls/form/RequiredFormField.js.map +1 -0
  40. package/dist/common/controls/repeater/InfiniteRepeater.js +100 -0
  41. package/dist/common/controls/repeater/InfiniteRepeater.js.map +1 -0
  42. package/dist/common/pages/LoginPage.js +79 -0
  43. package/dist/common/pages/LoginPage.js.map +1 -0
  44. package/dist/common/pages/mailboxes/MailboxEditorPage.js +79 -0
  45. package/dist/common/pages/mailboxes/MailboxEditorPage.js.map +1 -0
  46. package/dist/common/pages/mailboxes/MailboxListPage.js +80 -0
  47. package/dist/common/pages/mailboxes/MailboxListPage.js.map +1 -0
  48. package/dist/common/pages/mailboxes/services/MailboxService.js +60 -0
  49. package/dist/common/pages/mailboxes/services/MailboxService.js.map +1 -0
  50. package/dist/common/pages/user/LoginPage.js +79 -0
  51. package/dist/common/pages/user/LoginPage.js.map +1 -0
  52. package/dist/model/model.js +37 -0
  53. package/dist/model/model.js.map +1 -1
  54. package/dist/services/BusyProgress.js +2 -2
  55. package/dist/services/ConfigService.js +45 -0
  56. package/dist/services/ConfigService.js.map +1 -0
  57. package/dist/services/EntityService.js +4 -0
  58. package/dist/services/EntityService.js.map +1 -1
  59. package/dist/services/UserService.js +54 -0
  60. package/dist/services/UserService.js.map +1 -0
  61. package/dist/style/GlobalStyle.js +13 -5
  62. package/dist/style/GlobalStyle.js.map +1 -1
  63. package/dist/style/OverrideAppStyle.js +22 -0
  64. package/dist/style/OverrideAppStyle.js.map +1 -0
  65. package/dist/tsconfig.tsbuildinfo +1 -1
  66. package/dist/web/AppIndex.js +38 -2
  67. package/dist/web/AppIndex.js.map +1 -1
  68. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.d.ts +5 -2
  69. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.d.ts.map +1 -1
  70. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.js +18 -1
  71. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.js.map +1 -1
  72. package/node_modules/@web-atoms/entity/dist/services/MockBaseEntityService.d.ts +2 -0
  73. package/node_modules/@web-atoms/entity/dist/services/MockBaseEntityService.d.ts.map +1 -1
  74. package/node_modules/@web-atoms/entity/dist/services/MockBaseEntityService.js +1 -0
  75. package/node_modules/@web-atoms/entity/dist/services/MockBaseEntityService.js.map +1 -1
  76. package/node_modules/@web-atoms/entity/dist/services/Query.d.ts +2 -0
  77. package/node_modules/@web-atoms/entity/dist/services/Query.d.ts.map +1 -1
  78. package/node_modules/@web-atoms/entity/dist/services/Query.js +9 -6
  79. package/node_modules/@web-atoms/entity/dist/services/Query.js.map +1 -1
  80. package/node_modules/@web-atoms/entity/dist/services/QueryProcessor.d.ts +2 -0
  81. package/node_modules/@web-atoms/entity/dist/services/QueryProcessor.d.ts.map +1 -0
  82. package/node_modules/@web-atoms/entity/dist/services/QueryProcessor.js +9 -0
  83. package/node_modules/@web-atoms/entity/dist/services/QueryProcessor.js.map +1 -0
  84. package/node_modules/@web-atoms/entity/dist/tsconfig.tsbuildinfo +1 -1
  85. package/node_modules/@web-atoms/entity/package.json +1 -1
  86. package/node_modules/@web-atoms/entity/src/services/BaseEntityService.ts +23 -3
  87. package/node_modules/@web-atoms/entity/src/services/MockBaseEntityService.ts +3 -0
  88. package/node_modules/@web-atoms/entity/src/services/Query.ts +12 -7
  89. package/node_modules/@web-atoms/entity/src/services/QueryProcessor.ts +1 -0
  90. package/package.json +2 -2
  91. package/src/admin/Admin.tsx +40 -1
  92. package/src/admin/commands/AdminCommands.ts +33 -0
  93. package/src/admin/drawer/AdminDrawer.tsx +70 -0
  94. package/src/admin/pages/config/ConfigPage.tsx +5 -0
  95. package/src/admin/pages/domains/DomainListPage.tsx +43 -0
  96. package/src/admin/pages/domains/choose/ChooseDomainPage.tsx +57 -0
  97. package/src/admin/pages/domains/edit/EditDomainPage.tsx +102 -0
  98. package/src/admin/pages/domains/services/AdminDomainService.ts +34 -0
  99. package/src/admin/pages/home/AdminHome.tsx +6 -0
  100. package/src/admin/pages/users/EditUserPage.tsx +85 -0
  101. package/src/admin/pages/users/UserListPage.tsx +53 -0
  102. package/src/admin/pages/users/services/AdminUserService.ts +34 -0
  103. package/src/common/SocialMailApp.ts +7 -0
  104. package/src/common/Sql.ts +74 -0
  105. package/src/common/commands/CommonCommands.ts +6 -0
  106. package/src/common/controls/buttons/IconButton.tsx +60 -0
  107. package/src/common/controls/form/RequiredFormField.tsx +53 -0
  108. package/src/common/controls/repeater/InfiniteRepeater.tsx +93 -0
  109. package/src/common/pages/mailboxes/MailboxEditorPage.tsx +66 -0
  110. package/src/common/pages/mailboxes/MailboxListPage.tsx +48 -0
  111. package/src/common/pages/mailboxes/services/MailboxService.ts +34 -0
  112. package/src/common/pages/user/LoginPage.tsx +51 -0
  113. package/src/model/model.ts +234 -0
  114. package/src/services/BusyProgress.ts +2 -2
  115. package/src/services/ConfigService.ts +19 -0
  116. package/src/services/EntityService.ts +3 -0
  117. package/src/services/UserService.ts +26 -0
  118. package/src/style/GlobalStyle.ts +11 -2
  119. package/src/style/OverrideAppStyle.ts +9 -0
  120. package/src/web/AppIndex.tsx +26 -1
@@ -0,0 +1,51 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/style/styled"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var tslib_1, XNode_1, styled_1, createButton, IconButton, AddIconButton, AddIconTextButton, ArchiveIconButton, ArchiveIconTextButton, DeleteIconButton, DeleteIconTextButton, EmailIconButton, EmailIconTextButton, SaveIconButton, SaveIconTextButton, EditIconButton, EditIconTextButton, UploadIconButton, UploadIconTextButton;
4
+ var __moduleName = context_1 && context_1.id;
5
+ return {
6
+ setters: [
7
+ function (tslib_1_1) {
8
+ tslib_1 = tslib_1_1;
9
+ },
10
+ function (XNode_1_1) {
11
+ XNode_1 = XNode_1_1;
12
+ },
13
+ function (styled_1_1) {
14
+ styled_1 = styled_1_1;
15
+ }
16
+ ],
17
+ execute: function () {
18
+ styled_1.default.css `
19
+ `.installGlobal("[data-layout=icon-button]");
20
+ createButton = ({ text: defaultText = void 0, icon: defaultIcon = void 0, layout: defaultLayout = "" }) => (_a) => {
21
+ var { text = defaultText, icon = defaultIcon, layout = defaultLayout || (icon ? "icon-button" : "button") } = _a, a = tslib_1.__rest(_a, ["text", "icon", "layout"]);
22
+ a["data-layout"] = layout;
23
+ if (text && icon) {
24
+ return XNode_1.default.create("button", Object.assign({}, a),
25
+ XNode_1.default.create("i", { class: icon }),
26
+ XNode_1.default.create("span", { text: text }));
27
+ }
28
+ if (icon) {
29
+ return XNode_1.default.create("button", Object.assign({}, a, { class: icon }));
30
+ }
31
+ return XNode_1.default.create("button", Object.assign({}, a, { text: text }));
32
+ };
33
+ exports_1("IconButton", IconButton = createButton({}));
34
+ exports_1("AddIconButton", AddIconButton = createButton({ icon: "fas fa-plus", layout: "go-button" }));
35
+ exports_1("AddIconTextButton", AddIconTextButton = createButton({ text: "Add", icon: "fas fa-plus", layout: "go-icon-button" }));
36
+ exports_1("ArchiveIconButton", ArchiveIconButton = createButton({ icon: "fas fa-trash-can", layout: "warning-button" }));
37
+ exports_1("ArchiveIconTextButton", ArchiveIconTextButton = createButton({ text: "Archive", icon: "fas fa-trash-can", layout: "warning-icon-button" }));
38
+ exports_1("DeleteIconButton", DeleteIconButton = createButton({ icon: "fas fa-trash-can", layout: "reject-button" }));
39
+ exports_1("DeleteIconTextButton", DeleteIconTextButton = createButton({ text: "Delete", icon: "fas fa-trash-can", layout: "reject-icon-button" }));
40
+ exports_1("EmailIconButton", EmailIconButton = createButton({ icon: "fas fa-envelope", layout: "go-button" }));
41
+ exports_1("EmailIconTextButton", EmailIconTextButton = createButton({ text: "Email", icon: "fas fa-envelope", layout: "go-icon-button" }));
42
+ exports_1("SaveIconButton", SaveIconButton = createButton({ icon: "fas fa-floppy-disk", layout: "accept-button" }));
43
+ exports_1("SaveIconTextButton", SaveIconTextButton = createButton({ text: "Save", icon: "fas fa-floppy-disk", layout: "accept-icon-button" }));
44
+ exports_1("EditIconButton", EditIconButton = createButton({ icon: "fas fa-edit", layout: "button" }));
45
+ exports_1("EditIconTextButton", EditIconTextButton = createButton({ text: "Edit", icon: "fas fa-edit", layout: "icon-button" }));
46
+ exports_1("UploadIconButton", UploadIconButton = createButton({ icon: "fas fa-upload", layout: "go-button" }));
47
+ exports_1("UploadIconTextButton", UploadIconTextButton = createButton({ text: "Upload", icon: "fas fa-upload", layout: "go-icon-button" }));
48
+ }
49
+ };
50
+ });
51
+ //# sourceMappingURL=IconButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../../../src/common/controls/buttons/IconButton.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dist/core/XNode", "@web-atoms/web-controls/dist/basic/Form", "@web-atoms/web-controls/dist/basic/FormField", "@web-atoms/web-controls/dist/basic/PasswordBox"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var tslib_1, Bind_1, XNode_1, Form_1, FormField_1, PasswordBox_1;
4
+ var __moduleName = context_1 && context_1.id;
5
+ function RequiredFormField(_a, node) {
6
+ var _b, _c;
7
+ var { label, value, required = true, message, isValid, placeholder, valuePropertyName = "value" } = _a, extra = tslib_1.__rest(_a, ["label", "value", "required", "message", "isValid", "placeholder", "valuePropertyName"]);
8
+ const a = ((_b = node.attributes) !== null && _b !== void 0 ? _b : (node.attributes = {}));
9
+ a[valuePropertyName] = Bind_1.default.twoWaysImmediate(value);
10
+ if (placeholder) {
11
+ a.placeholder = placeholder;
12
+ }
13
+ for (const key in extra) {
14
+ if (Object.prototype.hasOwnProperty.call(extra, key)) {
15
+ const element = extra[key];
16
+ (_c = a[key]) !== null && _c !== void 0 ? _c : (a[key] = element);
17
+ }
18
+ }
19
+ return XNode_1.default.create(FormField_1.default, { required: required, label: label, error: Form_1.BindError({ value, message, isValid }) }, node);
20
+ }
21
+ exports_1("default", RequiredFormField);
22
+ function TextFormField(a) {
23
+ return XNode_1.default.create(RequiredFormField, Object.assign({}, a),
24
+ XNode_1.default.create("input", { type: "text" }));
25
+ }
26
+ exports_1("TextFormField", TextFormField);
27
+ function PasswordFormField(a) {
28
+ return XNode_1.default.create(RequiredFormField, Object.assign({}, a),
29
+ XNode_1.default.create(PasswordBox_1.default, { value: Bind_1.default.twoWaysImmediate(a.value) }));
30
+ }
31
+ exports_1("PasswordFormField", PasswordFormField);
32
+ return {
33
+ setters: [
34
+ function (tslib_1_1) {
35
+ tslib_1 = tslib_1_1;
36
+ },
37
+ function (Bind_1_1) {
38
+ Bind_1 = Bind_1_1;
39
+ },
40
+ function (XNode_1_1) {
41
+ XNode_1 = XNode_1_1;
42
+ },
43
+ function (Form_1_1) {
44
+ Form_1 = Form_1_1;
45
+ },
46
+ function (FormField_1_1) {
47
+ FormField_1 = FormField_1_1;
48
+ },
49
+ function (PasswordBox_1_1) {
50
+ PasswordBox_1 = PasswordBox_1_1;
51
+ }
52
+ ],
53
+ execute: function () {
54
+ }
55
+ };
56
+ });
57
+ //# sourceMappingURL=RequiredFormField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RequiredFormField.js","sourceRoot":"","sources":["../../../../src/common/controls/form/RequiredFormField.tsx"],"names":[],"mappings":";;;;IAiBA,SAAwB,iBAAiB,CAAW,EAS5B,EAAE,IAAW;;YATe,EAChD,KAAK,EACL,KAAK,EACL,QAAQ,GAAG,IAAI,EACf,OAAO,EACP,OAAO,EACP,WAAW,EACX,iBAAiB,GAAG,OAAO,OAEP,EADhB,KAAK,sBARuC,wFASnD,CADY;QAET,MAAM,CAAC,GAAG,OAAC,IAAI,CAAC,UAAU,oCAAf,IAAI,CAAC,UAAU,GAAK,EAAE,EAAC,CAAC;QACnC,CAAC,CAAC,iBAAiB,CAAC,GAAG,cAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACpD,IAAI,WAAW,EAAE;YACb,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC;SAC/B;QACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;YACrB,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;gBAClD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC3B,MAAA,CAAC,CAAC,GAAG,qCAAL,CAAC,CAAC,GAAG,IAAM,OAAO,EAAC;aACtB;SACJ;QACD,OAAO,uBAAC,mBAAS,IACb,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,gBAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAC,CAAC,IACtC,IAAI,CACF,CAAC;IACjB,CAAC;;IAED,SAAgB,aAAa,CAAE,CAAqB;QAChD,OAAO,uBAAC,iBAAiB,oBAAO,CAAC;YAAE,kCAAO,IAAI,EAAC,MAAM,GAAE,CAAoB,CAAC;IAChF,CAAC;;IAED,SAAgB,iBAAiB,CAAC,CAAqB;QACnD,OAAO,uBAAC,iBAAiB,oBAAO,CAAC;YAAE,uBAAC,qBAAW,IAAC,KAAK,EAAE,cAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;IACjH,CAAC;;;;;;;;;;;;;;;;;;;;;;;;QACD,CAAC"}
@@ -0,0 +1,100 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dist/core/types", "@web-atoms/core/dist/core/XNode", "@web-atoms/core/dist/web/controls/AtomControl"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var _a, tslib_1, Bind_1, types_1, XNode_1, AtomControl_1, loadMoreSet, pagedItemsSetter, scrollToBottom, InfiniteRepeater;
4
+ var __moduleName = context_1 && context_1.id;
5
+ return {
6
+ setters: [
7
+ function (tslib_1_1) {
8
+ tslib_1 = tslib_1_1;
9
+ },
10
+ function (Bind_1_1) {
11
+ Bind_1 = Bind_1_1;
12
+ },
13
+ function (types_1_1) {
14
+ types_1 = types_1_1;
15
+ },
16
+ function (XNode_1_1) {
17
+ XNode_1 = XNode_1_1;
18
+ },
19
+ function (AtomControl_1_1) {
20
+ AtomControl_1 = AtomControl_1_1;
21
+ }
22
+ ],
23
+ execute: function () {
24
+ loadMoreSet = Symbol("loadMoreSet");
25
+ pagedItemsSetter = AtomControl_1.AtomControl.registerProperty("paged-items", "paged-items", (control, element, value) => {
26
+ var _b, _c;
27
+ if (value && value.items) {
28
+ let cancelToken = control[loadMoreSet];
29
+ (_b = control.footerRenderer) !== null && _b !== void 0 ? _b : (control.footerRenderer = () => XNode_1.default.create("div", { "data-click-event": "load-more-items" },
30
+ XNode_1.default.create("span", { text: "Load more ... " })));
31
+ (_c = control.headerRenderer) !== null && _c !== void 0 ? _c : (control.headerRenderer = () => XNode_1.default.create("div", { class: "scroll-header", "style-height": "1px", "style-width": "100%" }));
32
+ if (!cancelToken) {
33
+ control[loadMoreSet] = cancelToken = new types_1.CancelToken();
34
+ control.bindEvent(control.element, "loadMoreItems", (e) => {
35
+ const ce = new CustomEvent("moreItems", {
36
+ detail: {
37
+ pagedItems: control.pagedItems,
38
+ cancelToken
39
+ },
40
+ bubbles: false
41
+ });
42
+ control.element.dispatchEvent(ce);
43
+ });
44
+ }
45
+ else {
46
+ cancelToken.cancel();
47
+ control[loadMoreSet] = cancelToken = new types_1.CancelToken();
48
+ }
49
+ const items = control.items;
50
+ if (items && Array.isArray(items)) {
51
+ items.clear();
52
+ items.addAll(value.items);
53
+ }
54
+ else {
55
+ control.items = value.items;
56
+ }
57
+ setTimeout(() => {
58
+ var _b;
59
+ const ce = (_b = control.element) === null || _b === void 0 ? void 0 : _b.firstElementChild;
60
+ ce === null || ce === void 0 ? void 0 : ce.scrollIntoView();
61
+ }, 100);
62
+ control.footer = value.total && value.items && value.items.length < value.total;
63
+ control.pagedItems = value;
64
+ }
65
+ });
66
+ scrollToBottom = ({ target, detail: { type, index } }) => {
67
+ if (!(type === "add" && index === 0) && type !== "reset") {
68
+ return;
69
+ }
70
+ setTimeout(() => {
71
+ const e = target.firstElementChild;
72
+ console.log(e);
73
+ e === null || e === void 0 ? void 0 : e.scrollIntoView(true);
74
+ }, 1);
75
+ };
76
+ InfiniteRepeater = class InfiniteRepeater {
77
+ };
78
+ _a = InfiniteRepeater;
79
+ InfiniteRepeater.pagedItems = (start) => {
80
+ const setter = start(0);
81
+ const setters = pagedItemsSetter(Bind_1.default.oneWayAsync(setter));
82
+ setters["event-more-items"] = Bind_1.default.event((s, e) => tslib_1.__awaiter(void 0, void 0, void 0, function* () {
83
+ var _b, _c;
84
+ const st = (_c = (_b = s.items) === null || _b === void 0 ? void 0 : _b.length) !== null && _c !== void 0 ? _c : 0;
85
+ if (!st) {
86
+ return;
87
+ }
88
+ const cancelToken = s[loadMoreSet];
89
+ const loader = start(st);
90
+ const results = yield loader(s, e.target, cancelToken);
91
+ s.items.addAll(results.items);
92
+ s.footer = results.items.length > 0;
93
+ }));
94
+ return setters;
95
+ };
96
+ exports_1("default", InfiniteRepeater);
97
+ }
98
+ };
99
+ });
100
+ //# sourceMappingURL=InfiniteRepeater.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InfiniteRepeater.js","sourceRoot":"","sources":["../../../../src/common/controls/repeater/InfiniteRepeater.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,79 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "@web-atoms/web-controls/dist/basic/Form", "@web-atoms/web-controls/dist/basic/FormField", "../../model/model", "@web-atoms/core/dist/core/Bind", "@web-atoms/web-controls/dist/basic/PasswordBox", "@web-atoms/core/dist/view-model/Action", "@web-atoms/core/dist/core/InjectProperty", "../../services/UserService"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var tslib_1, XNode_1, MobileApp_1, Form_1, FormField_1, model_1, Bind_1, PasswordBox_1, Action_1, InjectProperty_1, UserService_1, LoginPage;
4
+ var __moduleName = context_1 && context_1.id;
5
+ return {
6
+ setters: [
7
+ function (tslib_1_1) {
8
+ tslib_1 = tslib_1_1;
9
+ },
10
+ function (XNode_1_1) {
11
+ XNode_1 = XNode_1_1;
12
+ },
13
+ function (MobileApp_1_1) {
14
+ MobileApp_1 = MobileApp_1_1;
15
+ },
16
+ function (Form_1_1) {
17
+ Form_1 = Form_1_1;
18
+ },
19
+ function (FormField_1_1) {
20
+ FormField_1 = FormField_1_1;
21
+ },
22
+ function (model_1_1) {
23
+ model_1 = model_1_1;
24
+ },
25
+ function (Bind_1_1) {
26
+ Bind_1 = Bind_1_1;
27
+ },
28
+ function (PasswordBox_1_1) {
29
+ PasswordBox_1 = PasswordBox_1_1;
30
+ },
31
+ function (Action_1_1) {
32
+ Action_1 = Action_1_1;
33
+ },
34
+ function (InjectProperty_1_1) {
35
+ InjectProperty_1 = InjectProperty_1_1;
36
+ },
37
+ function (UserService_1_1) {
38
+ UserService_1 = UserService_1_1;
39
+ }
40
+ ],
41
+ execute: function () {
42
+ LoginPage = class LoginPage extends MobileApp_1.ContentPage {
43
+ init() {
44
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
45
+ this.model = model_1.LoginSession.create({});
46
+ this.model.userName = "";
47
+ this.model.checkPassword = "";
48
+ this.render(XNode_1.default.create("div", null,
49
+ XNode_1.default.create("div", { "data-layout": "center-all" },
50
+ XNode_1.default.create(Form_1.default, { "data-submit-event": "login" },
51
+ XNode_1.default.create(FormField_1.default, { label: "Username" },
52
+ XNode_1.default.create("input", { value: Bind_1.default.twoWaysImmediate(() => this.model.userName) })),
53
+ XNode_1.default.create(FormField_1.default, { label: "Username" },
54
+ XNode_1.default.create(PasswordBox_1.default, { value: Bind_1.default.twoWaysImmediate(() => this.model.checkPassword) })),
55
+ XNode_1.default.create("div", null,
56
+ XNode_1.default.create("button", { "data-layout": "accent-button", "data-type": "submit", text: "Login" }))))));
57
+ });
58
+ }
59
+ login() {
60
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
61
+ yield this.userService.login(this.model);
62
+ });
63
+ }
64
+ };
65
+ exports_1("default", LoginPage);
66
+ tslib_1.__decorate([
67
+ InjectProperty_1.default,
68
+ tslib_1.__metadata("design:type", UserService_1.default)
69
+ ], LoginPage.prototype, "userService", void 0);
70
+ tslib_1.__decorate([
71
+ Action_1.default({ onEvent: "login" }),
72
+ tslib_1.__metadata("design:type", Function),
73
+ tslib_1.__metadata("design:paramtypes", []),
74
+ tslib_1.__metadata("design:returntype", Promise)
75
+ ], LoginPage.prototype, "login", null);
76
+ }
77
+ };
78
+ });
79
+ //# sourceMappingURL=LoginPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoginPage.js","sourceRoot":"","sources":["../../../src/common/pages/LoginPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAWA,YAAA,MAAqB,SAAU,SAAQ,uBAAW;gBAOxC,IAAI;;wBACN,IAAI,CAAC,KAAK,GAAG,oBAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;wBACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;wBACzB,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;wBAC9B,IAAI,CAAC,MAAM,CAAC;4BACR,+CAAiB,YAAY;gCACzB,uBAAC,cAAI,yBAAmB,OAAO;oCAC3B,uBAAC,mBAAS,IAAC,KAAK,EAAC,UAAU;wCACvB,kCAAO,KAAK,EAAE,cAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CACzD;oCACZ,uBAAC,mBAAS,IAAC,KAAK,EAAC,UAAU;wCACvB,uBAAC,qBAAW,IACR,KAAK,EAAE,cAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAC1D,CACE;oCACZ;wCACI,kDACgB,eAAe,eACjB,QAAQ,EAClB,IAAI,EAAC,OAAO,GACV,CACJ,CACH,CACL,CACJ,CAAC,CAAC;oBACZ,CAAC;iBAAA;gBAGK,KAAK;;wBACP,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC7C,CAAC;iBAAA;aAEJ,CAAA;;YApCW;gBADP,wBAAc;kDACM,qBAAW;0DAAC;YAgC3B;gBADL,gBAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;;;;kDAG5B;QAGL,CAAC"}
@@ -0,0 +1,79 @@
1
+ System.register(["tslib", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "../../../model/model", "@web-atoms/core/dist/core/XNode", "@web-atoms/web-controls/dist/basic/Form", "../../controls/form/RequiredFormField", "@web-atoms/web-controls/dist/basic/FormField", "@web-atoms/web-controls/dist/basic/ComboBox", "./services/MailboxService", "@web-atoms/core/dist/core/InjectProperty", "@web-atoms/core/dist/core/Bind"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var tslib_1, MobileApp_1, model_1, XNode_1, Form_1, RequiredFormField_1, FormField_1, ComboBox_1, MailboxService_1, InjectProperty_1, Bind_1, MailboxEditorPage;
4
+ var __moduleName = context_1 && context_1.id;
5
+ return {
6
+ setters: [
7
+ function (tslib_1_1) {
8
+ tslib_1 = tslib_1_1;
9
+ },
10
+ function (MobileApp_1_1) {
11
+ MobileApp_1 = MobileApp_1_1;
12
+ },
13
+ function (model_1_1) {
14
+ model_1 = model_1_1;
15
+ },
16
+ function (XNode_1_1) {
17
+ XNode_1 = XNode_1_1;
18
+ },
19
+ function (Form_1_1) {
20
+ Form_1 = Form_1_1;
21
+ },
22
+ function (RequiredFormField_1_1) {
23
+ RequiredFormField_1 = RequiredFormField_1_1;
24
+ },
25
+ function (FormField_1_1) {
26
+ FormField_1 = FormField_1_1;
27
+ },
28
+ function (ComboBox_1_1) {
29
+ ComboBox_1 = ComboBox_1_1;
30
+ },
31
+ function (MailboxService_1_1) {
32
+ MailboxService_1 = MailboxService_1_1;
33
+ },
34
+ function (InjectProperty_1_1) {
35
+ InjectProperty_1 = InjectProperty_1_1;
36
+ },
37
+ function (Bind_1_1) {
38
+ Bind_1 = Bind_1_1;
39
+ }
40
+ ],
41
+ execute: function () {
42
+ MailboxEditorPage = class MailboxEditorPage extends MobileApp_1.PopupWindowPage {
43
+ constructor() {
44
+ super(...arguments);
45
+ this.domain = null;
46
+ }
47
+ init() {
48
+ var _a, _b;
49
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
50
+ this.title = "Add Mailbox";
51
+ this.model = (_b = (_a = this.parameters) === null || _a === void 0 ? void 0 : _a.model) !== null && _b !== void 0 ? _b : model_1.Mailbox.create({
52
+ emailAddress: model_1.EmailAddress.create({
53
+ emailAddress: ""
54
+ })
55
+ });
56
+ this.model.prefix = "";
57
+ const domains = yield this.mailboxService.domains();
58
+ this.domain = domains[0];
59
+ this.renderer = XNode_1.default.create("div", null,
60
+ XNode_1.default.create(Form_1.default, { "data-submit-event": "save-mailbox" },
61
+ XNode_1.default.create(RequiredFormField_1.TextFormField, { label: "Email Prefix", value: () => this.model.prefix }),
62
+ XNode_1.default.create(FormField_1.default, { label: "Domain" },
63
+ XNode_1.default.create(ComboBox_1.default, { labelPath: (item) => item === null || item === void 0 ? void 0 : item.name, valuePath: (item) => item === null || item === void 0 ? void 0 : item.domainID, selectedItem: Bind_1.default.twoWaysImmediate(() => this.domain), items: domains })),
64
+ XNode_1.default.create(FormField_1.default, { label: "Email Address" },
65
+ XNode_1.default.create("span", { text: Bind_1.default.oneWay(() => `${this.model.prefix}@${this.domain.name}`) })),
66
+ XNode_1.default.create("div", { "data-layout": "command-row" },
67
+ XNode_1.default.create("button", { "data-layout": "accept-button", text: "Add" }))));
68
+ });
69
+ }
70
+ };
71
+ exports_1("default", MailboxEditorPage);
72
+ tslib_1.__decorate([
73
+ InjectProperty_1.default,
74
+ tslib_1.__metadata("design:type", MailboxService_1.default)
75
+ ], MailboxEditorPage.prototype, "mailboxService", void 0);
76
+ }
77
+ };
78
+ });
79
+ //# sourceMappingURL=MailboxEditorPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MailboxEditorPage.js","sourceRoot":"","sources":["../../../../src/common/pages/mailboxes/MailboxEditorPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAeA,oBAAA,MAAqB,iBAAkB,SAAQ,2BAAe;gBAA9D;;oBAMY,WAAM,GAAY,IAAI,CAAC;gBA4CnC,CAAC;gBAvCS,IAAI;;;wBAEN,IAAI,CAAC,KAAK,GAAG,aAAa,CAAC;wBAE3B,IAAI,CAAC,KAAK,GAAG,MAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,KAAK,mCAAI,eAAO,CAAC,MAAM,CAAC;4BAClD,YAAY,EAAE,oBAAY,CAAC,MAAM,CAAC;gCAC9B,YAAY,EAAE,EAAE;6BACnB,CAAC;yBACL,CAAC,CAAC;wBAEH,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;wBAEvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;wBACpD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;wBAEzB,IAAI,CAAC,QAAQ,GAAG;4BACZ,uBAAC,cAAI,yBAAmB,cAAc;gCAClC,uBAAC,iCAAa,IAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG;gCACrE,uBAAC,mBAAS,IAAC,KAAK,EAAC,QAAQ;oCACrB,uBAAC,kBAAQ,IACL,SAAS,EAAE,CAAC,IAAa,EAAE,EAAE,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EACxC,SAAS,EAAE,CAAC,IAAa,EAAE,EAAE,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,EAC5C,YAAY,EAAE,cAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EACtD,KAAK,EAAE,OAAO,GACZ,CACE;gCACZ,uBAAC,mBAAS,IAAC,KAAK,EAAC,eAAe;oCAC5B,iCAAM,IAAI,EAAE,cAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,CACpE;gCACZ,+CAAiB,aAAa;oCAC1B,kDACgB,eAAe,EAC3B,IAAI,EAAC,KAAK,GACR,CACJ,CACH,CACL,CAAC;;iBAEV;aACJ,CAAA;;YAzCW;gBADP,wBAAc;kDACS,wBAAc;qEAAC;QAyC1C,CAAC"}
@@ -0,0 +1,80 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dist/core/XNode", "@web-atoms/web-controls/dist/basic/AtomRepeater", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "../../controls/repeater/InfiniteRepeater", "./services/MailboxService", "@web-atoms/core/dist/core/InjectProperty", "@web-atoms/core/dist/view-model/Action", "@web-atoms/web-controls/dist/PageNavigator", "./MailboxEditorPage"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var tslib_1, Bind_1, XNode_1, AtomRepeater_1, MobileApp_1, InfiniteRepeater_1, MailboxService_1, InjectProperty_1, Action_1, PageNavigator_1, MailboxEditorPage_1, MailboxListPage;
4
+ var __moduleName = context_1 && context_1.id;
5
+ return {
6
+ setters: [
7
+ function (tslib_1_1) {
8
+ tslib_1 = tslib_1_1;
9
+ },
10
+ function (Bind_1_1) {
11
+ Bind_1 = Bind_1_1;
12
+ },
13
+ function (XNode_1_1) {
14
+ XNode_1 = XNode_1_1;
15
+ },
16
+ function (AtomRepeater_1_1) {
17
+ AtomRepeater_1 = AtomRepeater_1_1;
18
+ },
19
+ function (MobileApp_1_1) {
20
+ MobileApp_1 = MobileApp_1_1;
21
+ },
22
+ function (InfiniteRepeater_1_1) {
23
+ InfiniteRepeater_1 = InfiniteRepeater_1_1;
24
+ },
25
+ function (MailboxService_1_1) {
26
+ MailboxService_1 = MailboxService_1_1;
27
+ },
28
+ function (InjectProperty_1_1) {
29
+ InjectProperty_1 = InjectProperty_1_1;
30
+ },
31
+ function (Action_1_1) {
32
+ Action_1 = Action_1_1;
33
+ },
34
+ function (PageNavigator_1_1) {
35
+ PageNavigator_1 = PageNavigator_1_1;
36
+ },
37
+ function (MailboxEditorPage_1_1) {
38
+ MailboxEditorPage_1 = MailboxEditorPage_1_1;
39
+ }
40
+ ],
41
+ execute: function () {
42
+ MailboxListPage = class MailboxListPage extends MobileApp_1.ContentPage {
43
+ constructor() {
44
+ super(...arguments);
45
+ this.search = "";
46
+ this.mailboxes = [];
47
+ this.version = 0;
48
+ }
49
+ init() {
50
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
51
+ this.titleRenderer = () => XNode_1.default.create("div", { "data-layout": "row" },
52
+ XNode_1.default.create("input", { value: Bind_1.default.twoWaysImmediate(() => this.search) }),
53
+ XNode_1.default.create("i", { class: "fas fa-plus", "data-click-event": "add-mailbox" }));
54
+ this.renderer = XNode_1.default.create("div", null,
55
+ XNode_1.default.create(AtomRepeater_1.default, Object.assign({ items: this.mailboxes }, InfiniteRepeater_1.default.pagedItems((start) => (c, e, cancelToken) => this.mailboxService.list({ start, cancelToken, search: this.search, version: this.version })), { itemRenderer: (item) => XNode_1.default.create("tr", null,
56
+ XNode_1.default.create("td", null)) })));
57
+ });
58
+ }
59
+ addMailbox() {
60
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
61
+ yield PageNavigator_1.default.pushPageForResult(MailboxEditorPage_1.default);
62
+ this.version++;
63
+ });
64
+ }
65
+ };
66
+ exports_1("default", MailboxListPage);
67
+ tslib_1.__decorate([
68
+ InjectProperty_1.default,
69
+ tslib_1.__metadata("design:type", MailboxService_1.default)
70
+ ], MailboxListPage.prototype, "mailboxService", void 0);
71
+ tslib_1.__decorate([
72
+ Action_1.default({ onEvent: "add-mailbox" }),
73
+ tslib_1.__metadata("design:type", Function),
74
+ tslib_1.__metadata("design:paramtypes", []),
75
+ tslib_1.__metadata("design:returntype", Promise)
76
+ ], MailboxListPage.prototype, "addMailbox", null);
77
+ }
78
+ };
79
+ });
80
+ //# sourceMappingURL=MailboxListPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MailboxListPage.js","sourceRoot":"","sources":["../../../../src/common/pages/mailboxes/MailboxListPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAYA,kBAAA,MAAqB,eAAgB,SAAQ,uBAAW;gBAAxD;;oBAEY,WAAM,GAAW,EAAE,CAAC;oBAKpB,cAAS,GAAe,EAAE,CAAC;oBAE3B,YAAO,GAAG,CAAC,CAAC;gBA0BxB,CAAC;gBAxBS,IAAI;;wBACN,IAAI,CAAC,aAAa,GAAG,GAAG,EAAE,CAAC,+CAAiB,KAAK;4BAC7C,kCAAO,KAAK,EAAE,cAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG;4BACzD,8BAAG,KAAK,EAAC,aAAa,sBAAkB,aAAa,GAAE,CACrD,CAAC;wBAEP,IAAI,CAAC,QAAQ,GAAG;4BACZ,uBAAC,sBAAY,kBACT,KAAK,EAAE,IAAI,CAAC,SAAS,IACf,0BAAgB,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,CACpC,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAC5H,YAAY,EAAE,CAAC,IAAc,EAAE,EAAE,CAAC;oCAC9B,kCAAS,CACR,IACH,CACJ,CAAC;oBACX,CAAC;iBAAA;gBAGK,UAAU;;wBACZ,MAAM,uBAAa,CAAC,iBAAiB,CAAC,2BAAiB,CAAC,CAAC;wBACzD,IAAI,CAAC,OAAO,EAAE,CAAC;oBACnB,CAAC;iBAAA;aAEJ,CAAA;;YA9BW;gBADP,wBAAc;kDACS,wBAAc;mEAAC;YAyBjC;gBADL,gBAAM,CAAC,EAAE,OAAO,EAAE,aAAa,EAAC,CAAC;;;;6DAIjC;QAGL,CAAC"}
@@ -0,0 +1,60 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/di/DITransient", "@web-atoms/core/dist/di/Inject", "../../../../services/EntityService", "../../../../model/model", "../../../Sql"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var tslib_1, DITransient_1, Inject_1, EntityService_1, model_1, Sql_1, MailboxService;
4
+ var __moduleName = context_1 && context_1.id;
5
+ return {
6
+ setters: [
7
+ function (tslib_1_1) {
8
+ tslib_1 = tslib_1_1;
9
+ },
10
+ function (DITransient_1_1) {
11
+ DITransient_1 = DITransient_1_1;
12
+ },
13
+ function (Inject_1_1) {
14
+ Inject_1 = Inject_1_1;
15
+ },
16
+ function (EntityService_1_1) {
17
+ EntityService_1 = EntityService_1_1;
18
+ },
19
+ function (model_1_1) {
20
+ model_1 = model_1_1;
21
+ },
22
+ function (Sql_1_1) {
23
+ Sql_1 = Sql_1_1;
24
+ }
25
+ ],
26
+ execute: function () {
27
+ MailboxService = class MailboxService {
28
+ domains() {
29
+ return this.entityService.query(model_1.Domain).toArray();
30
+ }
31
+ list({ search = "", start = 0, size = 50, version = 0, cancelToken }) {
32
+ let q = this.entityService.query(model_1.Mailbox);
33
+ if (search) {
34
+ if (search.endsWith("@")) {
35
+ search = search + "%";
36
+ q = q.where({ search }, (p) => (x) => Sql_1.Sql.text.like(x.emailAddress.emailAddress, p.search));
37
+ }
38
+ else if (search.startsWith("@")) {
39
+ search = "%" + search;
40
+ q = q.where({ search }, (p) => (x) => Sql_1.Sql.text.like(x.emailAddress.emailAddress, p.search));
41
+ }
42
+ else {
43
+ q = q.where({ search }, (p) => (x) => x.emailAddress.emailAddress === p.search);
44
+ }
45
+ }
46
+ return q.toPagedList({ start, size, cancelToken });
47
+ }
48
+ };
49
+ tslib_1.__decorate([
50
+ Inject_1.Inject,
51
+ tslib_1.__metadata("design:type", EntityService_1.default)
52
+ ], MailboxService.prototype, "entityService", void 0);
53
+ MailboxService = tslib_1.__decorate([
54
+ DITransient_1.default()
55
+ ], MailboxService);
56
+ exports_1("default", MailboxService);
57
+ }
58
+ };
59
+ });
60
+ //# sourceMappingURL=MailboxService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MailboxService.js","sourceRoot":"","sources":["../../../../../src/common/pages/mailboxes/services/MailboxService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;YAOqB,cAAc,GAApB,MAAM,cAAc;gBAKxB,OAAO;oBACV,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,cAAM,CAAC,CAAC,OAAO,EAAE,CAAC;gBACtD,CAAC;gBAEM,IAAI,CAAC,EAAE,MAAM,GAAG,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,OAAO,GAAG,CAAC,EAAE,WAAW,EAAC;oBACtE,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,eAAO,CAAC,CAAC;oBAC1C,IAAI,MAAM,EAAE;wBACR,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;4BACtB,MAAM,GAAG,MAAM,GAAG,GAAG,CAAC;4BACtB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;yBAE/F;6BAAM,IAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;4BAC9B,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC;4BACtB,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;yBAC/F;6BAAM;4BACH,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC;yBACnF;qBACJ;oBACD,OAAO,CAAC,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;gBACvD,CAAC;aAEJ,CAAA;YAvBW;gBADP,eAAM;kDACgB,uBAAa;iEAAC;YAHpB,cAAc;gBADlC,qBAAW,EAAE;eACO,cAAc,CA0BlC;iCA1BoB,cAAc;QA0BlC,CAAC"}
@@ -0,0 +1,79 @@
1
+ System.register(["tslib", "@web-atoms/core/dist/core/XNode", "@web-atoms/web-controls/dist/mobile-app/MobileApp", "@web-atoms/web-controls/dist/basic/Form", "@web-atoms/web-controls/dist/basic/FormField", "../../../model/model", "@web-atoms/core/dist/core/Bind", "@web-atoms/web-controls/dist/basic/PasswordBox", "@web-atoms/core/dist/view-model/Action", "@web-atoms/core/dist/core/InjectProperty", "../../../services/UserService"], function (exports_1, context_1) {
2
+ "use strict";
3
+ var tslib_1, XNode_1, MobileApp_1, Form_1, FormField_1, model_1, Bind_1, PasswordBox_1, Action_1, InjectProperty_1, UserService_1, LoginPage;
4
+ var __moduleName = context_1 && context_1.id;
5
+ return {
6
+ setters: [
7
+ function (tslib_1_1) {
8
+ tslib_1 = tslib_1_1;
9
+ },
10
+ function (XNode_1_1) {
11
+ XNode_1 = XNode_1_1;
12
+ },
13
+ function (MobileApp_1_1) {
14
+ MobileApp_1 = MobileApp_1_1;
15
+ },
16
+ function (Form_1_1) {
17
+ Form_1 = Form_1_1;
18
+ },
19
+ function (FormField_1_1) {
20
+ FormField_1 = FormField_1_1;
21
+ },
22
+ function (model_1_1) {
23
+ model_1 = model_1_1;
24
+ },
25
+ function (Bind_1_1) {
26
+ Bind_1 = Bind_1_1;
27
+ },
28
+ function (PasswordBox_1_1) {
29
+ PasswordBox_1 = PasswordBox_1_1;
30
+ },
31
+ function (Action_1_1) {
32
+ Action_1 = Action_1_1;
33
+ },
34
+ function (InjectProperty_1_1) {
35
+ InjectProperty_1 = InjectProperty_1_1;
36
+ },
37
+ function (UserService_1_1) {
38
+ UserService_1 = UserService_1_1;
39
+ }
40
+ ],
41
+ execute: function () {
42
+ LoginPage = class LoginPage extends MobileApp_1.ContentPage {
43
+ init() {
44
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
45
+ this.model = model_1.LoginSession.create({});
46
+ this.model.userName = "";
47
+ this.model.checkPassword = "";
48
+ this.render(XNode_1.default.create("div", null,
49
+ XNode_1.default.create("div", { "data-layout": "center-all" },
50
+ XNode_1.default.create(Form_1.default, { "data-submit-event": "login" },
51
+ XNode_1.default.create(FormField_1.default, { label: "Username" },
52
+ XNode_1.default.create("input", { value: Bind_1.default.twoWaysImmediate(() => this.model.userName) })),
53
+ XNode_1.default.create(FormField_1.default, { label: "Username" },
54
+ XNode_1.default.create(PasswordBox_1.default, { value: Bind_1.default.twoWaysImmediate(() => this.model.checkPassword) })),
55
+ XNode_1.default.create("div", null,
56
+ XNode_1.default.create("button", { "data-layout": "accent-button", "data-type": "submit", text: "Login" }))))));
57
+ });
58
+ }
59
+ login() {
60
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
61
+ yield this.userService.login(this.model);
62
+ });
63
+ }
64
+ };
65
+ exports_1("default", LoginPage);
66
+ tslib_1.__decorate([
67
+ InjectProperty_1.default,
68
+ tslib_1.__metadata("design:type", UserService_1.default)
69
+ ], LoginPage.prototype, "userService", void 0);
70
+ tslib_1.__decorate([
71
+ Action_1.default({ onEvent: "login" }),
72
+ tslib_1.__metadata("design:type", Function),
73
+ tslib_1.__metadata("design:paramtypes", []),
74
+ tslib_1.__metadata("design:returntype", Promise)
75
+ ], LoginPage.prototype, "login", null);
76
+ }
77
+ };
78
+ });
79
+ //# sourceMappingURL=LoginPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoginPage.js","sourceRoot":"","sources":["../../../../src/common/pages/user/LoginPage.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAWA,YAAA,MAAqB,SAAU,SAAQ,uBAAW;gBAOxC,IAAI;;wBACN,IAAI,CAAC,KAAK,GAAG,oBAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;wBACrC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;wBACzB,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC;wBAC9B,IAAI,CAAC,MAAM,CAAC;4BACR,+CAAiB,YAAY;gCACzB,uBAAC,cAAI,yBAAmB,OAAO;oCAC3B,uBAAC,mBAAS,IAAC,KAAK,EAAC,UAAU;wCACvB,kCAAO,KAAK,EAAE,cAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CACzD;oCACZ,uBAAC,mBAAS,IAAC,KAAK,EAAC,UAAU;wCACvB,uBAAC,qBAAW,IACR,KAAK,EAAE,cAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAC1D,CACE;oCACZ;wCACI,kDACgB,eAAe,eACjB,QAAQ,EAClB,IAAI,EAAC,OAAO,GACV,CACJ,CACH,CACL,CACJ,CAAC,CAAC;oBACZ,CAAC;iBAAA;gBAGK,KAAK;;wBACP,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC7C,CAAC;iBAAA;aAEJ,CAAA;;YApCW;gBADP,wBAAc;kDACM,qBAAW;0DAAC;YAgC3B;gBADL,gBAAM,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;;;;kDAG5B;QAGL,CAAC"}