@social-mail/social-mail-client 1.2.488 → 1.2.490

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 (87) hide show
  1. package/content/local-db/worker.js +2 -2
  2. package/dist/admin/AdminAppIndex.pack.js +944 -210
  3. package/dist/admin/AdminAppIndex.pack.js.map +1 -1
  4. package/dist/admin/AdminAppIndex.pack.min.js +28 -3
  5. package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
  6. package/dist/model/model.d.ts +9 -5
  7. package/dist/model/model.d.ts.map +1 -1
  8. package/dist/model/model.js +907 -207
  9. package/dist/model/model.js.map +1 -1
  10. package/dist/public/channel/ChannelView.pack.js +907 -207
  11. package/dist/public/channel/ChannelView.pack.js.map +1 -1
  12. package/dist/public/channel/ChannelView.pack.min.js +1 -1
  13. package/dist/public/channel/ChannelView.pack.min.js.map +1 -1
  14. package/dist/public/contact-us/ContactUsApp.d.ts +1 -0
  15. package/dist/public/contact-us/ContactUsApp.d.ts.map +1 -1
  16. package/dist/public/contact-us/ContactUsApp.js +100 -14
  17. package/dist/public/contact-us/ContactUsApp.js.map +1 -1
  18. package/dist/public/contact-us/ContactUsApp.pack.js +100 -14
  19. package/dist/public/contact-us/ContactUsApp.pack.js.map +1 -1
  20. package/dist/public/contact-us/ContactUsApp.pack.min.js +82 -14
  21. package/dist/public/contact-us/ContactUsApp.pack.min.js.map +1 -1
  22. package/dist/public/store/Store.pack.js +907 -207
  23. package/dist/public/store/Store.pack.js.map +1 -1
  24. package/dist/public/store/Store.pack.min.js +1 -1
  25. package/dist/public/store/Store.pack.min.js.map +1 -1
  26. package/dist/public/store/cart/ShoppingCart.pack.js +909 -208
  27. package/dist/public/store/cart/ShoppingCart.pack.js.map +1 -1
  28. package/dist/public/store/cart/ShoppingCart.pack.min.js +1 -1
  29. package/dist/public/store/cart/ShoppingCart.pack.min.js.map +1 -1
  30. package/dist/services/LoginService.d.ts.map +1 -1
  31. package/dist/services/LoginService.js +2 -1
  32. package/dist/services/LoginService.js.map +1 -1
  33. package/dist/services/local-db/LocalDbService.d.ts +12 -5
  34. package/dist/services/local-db/LocalDbService.d.ts.map +1 -1
  35. package/dist/services/local-db/LocalDbService.js +57 -21
  36. package/dist/services/local-db/LocalDbService.js.map +1 -1
  37. package/dist/services/local-db/core/LocalTable.d.ts +19 -0
  38. package/dist/services/local-db/core/LocalTable.d.ts.map +1 -0
  39. package/dist/services/local-db/core/LocalTable.js +120 -0
  40. package/dist/services/local-db/core/LocalTable.js.map +1 -0
  41. package/dist/services/local-db/core/TemplateQuery.d.ts +27 -0
  42. package/dist/services/local-db/core/TemplateQuery.d.ts.map +1 -0
  43. package/dist/services/local-db/core/TemplateQuery.js +132 -0
  44. package/dist/services/local-db/core/TemplateQuery.js.map +1 -0
  45. package/dist/services/local-db/mailboxes/LocalMailbox.d.ts +13 -0
  46. package/dist/services/local-db/mailboxes/LocalMailbox.d.ts.map +1 -0
  47. package/dist/services/local-db/mailboxes/LocalMailbox.js +62 -0
  48. package/dist/services/local-db/mailboxes/LocalMailbox.js.map +1 -0
  49. package/dist/services/mime-service/MimeNode.js +1 -1
  50. package/dist/services/mime-service/MimeNode.js.map +1 -1
  51. package/dist/site-editor/editor/HtmlPageEditor.d.ts.map +1 -1
  52. package/dist/site-editor/editor/HtmlPageEditor.js +34 -1
  53. package/dist/site-editor/editor/HtmlPageEditor.js.map +1 -1
  54. package/dist/tests/template-query/template-queries.test.d.ts +2 -0
  55. package/dist/tests/template-query/template-queries.test.d.ts.map +1 -0
  56. package/dist/tests/template-query/template-queries.test.js +27 -0
  57. package/dist/tests/template-query/template-queries.test.js.map +1 -0
  58. package/dist/tsconfig.tsbuildinfo +1 -1
  59. package/dist/web/AppIndex.pack.js +944 -210
  60. package/dist/web/AppIndex.pack.js.map +1 -1
  61. package/dist/web/AppIndex.pack.min.js +29 -4
  62. package/dist/web/AppIndex.pack.min.js.map +1 -1
  63. package/dist/web/page/files/shares/AddSharePage.d.ts +0 -1
  64. package/dist/web/page/files/shares/AddSharePage.d.ts.map +1 -1
  65. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.d.ts +2 -0
  66. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.d.ts.map +1 -1
  67. package/node_modules/@web-atoms/entity/dist/services/BaseEntityService.js.map +1 -1
  68. package/node_modules/@web-atoms/entity/dist/tsconfig.tsbuildinfo +1 -1
  69. package/node_modules/@web-atoms/entity/package.json +1 -1
  70. package/node_modules/@web-atoms/entity/src/services/BaseEntityService.ts +2 -0
  71. package/package.json +2 -2
  72. package/pg-worker.js +15 -0
  73. package/src/model/model.ts +84 -82
  74. package/src/public/contact-us/ContactUsApp.tsx +102 -17
  75. package/src/services/LoginService.ts +5 -0
  76. package/src/services/local-db/LocalDbService.ts +68 -32
  77. package/src/services/local-db/core/LocalTable.ts +113 -0
  78. package/src/services/local-db/core/TemplateQuery.ts +135 -0
  79. package/src/services/local-db/mailboxes/LocalMailbox.ts +60 -0
  80. package/src/services/mime-service/MimeNode.ts +1 -1
  81. package/src/site-editor/editor/HtmlPageEditor.tsx +31 -1
  82. package/src/tests/template-query/template-queries.test.ts +22 -0
  83. package/dist/services/local-db/SqlDbFactory.d.ts +0 -47
  84. package/dist/services/local-db/SqlDbFactory.d.ts.map +0 -1
  85. package/dist/services/local-db/SqlDbFactory.js +0 -179
  86. package/dist/services/local-db/SqlDbFactory.js.map +0 -1
  87. package/src/services/local-db/SqlDbFactory.ts +0 -181
@@ -11,6 +11,7 @@ export default class ContactUsApp extends AtomControl {
11
11
  };
12
12
  constructor(app: any, e?: HTMLElement);
13
13
  init(): Promise<void>;
14
+ selectInput(target: HTMLElement): void;
14
15
  sendEmail(): Promise<void>;
15
16
  }
16
17
  //# sourceMappingURL=ContactUsApp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ContactUsApp.d.ts","sourceRoot":"","sources":["../../../src/public/contact-us/ContactUsApp.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAmC5E,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IAEjD,KAAK;;;;;;;;MAQH;gBAEU,GAAG,KAAA,EAAE,CAAC,cAAuC;IAKnD,IAAI;IAmDJ,SAAS;CAWlB"}
1
+ {"version":3,"file":"ContactUsApp.d.ts","sourceRoot":"","sources":["../../../src/public/contact-us/ContactUsApp.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAuG5E,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,WAAW;IAEjD,KAAK;;;;;;;;MAQH;gBAEU,GAAG,KAAA,EAAE,CAAC,cAAuC;IAKnD,IAAI;IAsDV,WAAW,CAAC,MAAM,EAAE,WAAW;IAczB,SAAS;CAWlB"}
@@ -30,29 +30,97 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
30
30
  }],
31
31
  execute: function () {
32
32
  styled.css`
33
- display: flex;
34
- justify-content: center;
33
+ display: grid;
35
34
  align-items: center;
35
+ justify-items: stretch;
36
+
37
+ padding: 20px;
38
+
39
+ & [data-form] {
40
+ display: grid;
41
+ grid-template-columns: 1fr 1fr;
42
+ grid-template-rows: auto auto auto auto auto;
43
+
44
+ background-color: transparent;
45
+
46
+ & .field-error, & .error-message {
47
+ background-color: transparent;
48
+ color: red;
49
+ }
50
+
51
+ & > * {
52
+ background-color: #80808015;
53
+ padding: 5px;
54
+ padding-left: 10px;
55
+ padding-right: 10px;
56
+ border-radius: 10px;
57
+ }
58
+
59
+ }
60
+
61
+ & .error-message {
62
+ grid-column: 1 / span 2;
63
+ grid-row: 1;
64
+ }
65
+
66
+ & .name {
67
+ grid-column: 1;
68
+ grid-row: 2;
69
+ }
70
+
71
+ & .contact {
72
+ grid-column: 2;
73
+ grid-row: 2;
74
+ }
75
+
76
+ & .questions {
77
+ grid-column: 1 / span 2;
78
+ grid-row: 3;
79
+ }
80
+
81
+ & .verify {
82
+ grid-column: 1 / span 2;
83
+ grid-row: 4;
84
+ & img {
85
+ max-width: 250px;
86
+ }
87
+ }
88
+
89
+ & .email {
90
+ grid-column: 1 / span 2;
91
+ grid-row: 5;
92
+ background-color: transparent;
93
+ place-self: center;
94
+ & button {
95
+ display: flex;
96
+ gap: 10px;
97
+ background-color: lightgreen;
98
+ font-size: larger;
99
+ border: none;
100
+ outline: none;
101
+ padding: 10px;
102
+ padding-left: 20px;
103
+ padding-right: 20px;
104
+ border-radius: 20px;
105
+ margin-bottom: 20px;
106
+ &:hover {
107
+ box-shadow: 0 0 5px 5px #0000FF50;
108
+ }
109
+ }
110
+ }
111
+
36
112
  & .captcha {
37
113
  display: flex;
38
114
  flex-direction: column;
39
115
  gap: 10px;
40
116
  }
117
+
118
+
119
+
41
120
  & input, &,textarea {
42
121
  border: none;
43
122
  outline: none;
44
123
  background-color: transparent;
45
- border-bottom: solid 1px lightgray;
46
- }
47
- & button {
48
- display: flex;
49
- gap: 10px;
50
- background-color: lightgreen;
51
- padding: 2px;
52
- padding-left: 10px;
53
- padding-right: 10px;
54
- border-radius: 10px;
55
- margin-bottom: 10px;
56
124
  }
57
125
  `.installGlobal("contact-us");
58
126
  ContactUsApp = class ContactUsApp extends AtomControl {
@@ -73,23 +141,29 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
73
141
  return __awaiter(this, void 0, void 0, function* () {
74
142
  const captcha = this.model.captcha = yield FetchBuilder.put("/api/users/captcha").responseAsJson();
75
143
  captcha.code = "";
76
- this.renderer = XNode.create("div", null, XNode.create(Form, null, XNode.create(FormField, {
144
+ this.renderer = XNode.create("div", {
145
+ "event-click": e => this.selectInput(e.target)
146
+ }, XNode.create(Form, null, XNode.create(FormField, {
147
+ class: "name",
77
148
  label: "Your Name",
78
149
  error: Bind.oneWay(() => this.model.name ? "" : "Name is required")
79
150
  }, XNode.create("input", {
80
151
  autofocus: true,
81
152
  value: Bind.twoWaysImmediate(() => this.model.name)
82
153
  })), XNode.create(FormField, {
154
+ class: "contact",
83
155
  label: "Your Phone/Email",
84
156
  error: Bind.oneWay(() => this.model.email || this.model.phone ? "" : "Email or Phone is required")
85
157
  }, XNode.create("input", {
86
158
  value: Bind.twoWaysImmediate(() => this.model.email)
87
159
  })), XNode.create(FormField, {
160
+ class: "questions",
88
161
  label: "Questions"
89
162
  }, XNode.create("textarea", {
90
163
  rows: "8",
91
164
  value: Bind.twoWaysImmediate(() => this.model.description)
92
165
  })), XNode.create(FormField, {
166
+ class: "verify",
93
167
  label: "Verify Code",
94
168
  error: Bind.oneWay(() => this.model.captcha.code ? "" : "Code is required")
95
169
  }, XNode.create("div", null, XNode.create("div", {
@@ -100,6 +174,7 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
100
174
  type: "tel",
101
175
  value: Bind.twoWaysImmediate(() => this.model.captcha.code)
102
176
  })))), XNode.create(FormField, {
177
+ class: "email",
103
178
  label: ""
104
179
  }, XNode.create("div", null, XNode.create(EmailIconTextButton, {
105
180
  "data-submit-event": "send-email",
@@ -107,6 +182,17 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
107
182
  })))));
108
183
  });
109
184
  }
185
+ selectInput(target) {
186
+ var _a;
187
+ while (target) {
188
+ const input = (_a = target.querySelector("input")) !== null && _a !== void 0 ? _a : target.querySelector("textarea");
189
+ if (input) {
190
+ input.focus();
191
+ return;
192
+ }
193
+ target = target.parentElement;
194
+ }
195
+ }
110
196
  sendEmail() {
111
197
  return __awaiter(this, void 0, void 0, function* () {
112
198
  yield FetchBuilder.post("/api/site/contact").jsonBody(this.model).responseAsJson();
@@ -1 +1 @@
1
- {"version":3,"names":["Bind","_webAtomsCoreDistCoreBind","default","_webAtomsCoreDistCoreXNode","XNode","_webAtomsCoreDistServicesFetchBuilder","FetchBuilder","_webAtomsCoreDistStyleStyled","styled","_webAtomsCoreDistWebControlsAtomControl","AtomControl","_webAtomsWebControlsDistBasicForm","Form","_webAtomsWebControlsDistBasicFormField","FormField","_commonControlsButtonsIconButton","EmailIconTextButton","_webAtomsCoreDistPack","Pack","_webAtomsCoreDistViewModelAction","Action","execute","css","installGlobal","ContactUsApp","constructor","app","e","document","createElement","model","captcha","name","email","phone","subject","countryCode","description","runAfterInit","runAsync","init","put","responseAsJson","code","renderer","create","label","error","oneWay","autofocus","value","twoWaysImmediate","rows","class","src","id","accessCode","type","text","sendEmail","post","jsonBody","__decorate","onEvent","_export"],"sources":["../../../src/public/contact-us/ContactUsApp.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Bind","_webAtomsCoreDistCoreBind","default","_webAtomsCoreDistCoreXNode","XNode","_webAtomsCoreDistServicesFetchBuilder","FetchBuilder","_webAtomsCoreDistStyleStyled","styled","_webAtomsCoreDistWebControlsAtomControl","AtomControl","_webAtomsWebControlsDistBasicForm","Form","_webAtomsWebControlsDistBasicFormField","FormField","_commonControlsButtonsIconButton","EmailIconTextButton","_webAtomsCoreDistPack","Pack","_webAtomsCoreDistViewModelAction","Action","execute","css","installGlobal","ContactUsApp","constructor","app","e","document","createElement","model","captcha","name","email","phone","subject","countryCode","description","runAfterInit","runAsync","init","put","responseAsJson","code","renderer","create","selectInput","target","class","label","error","oneWay","autofocus","value","twoWaysImmediate","rows","src","id","accessCode","type","text","input","_a","querySelector","focus","parentElement","sendEmail","post","jsonBody","__decorate","onEvent","_export"],"sources":["../../../src/public/contact-us/ContactUsApp.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -11058,29 +11058,97 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
11058
11058
  }],
11059
11059
  execute: function () {
11060
11060
  styled.css`
11061
- display: flex;
11062
- justify-content: center;
11061
+ display: grid;
11063
11062
  align-items: center;
11063
+ justify-items: stretch;
11064
+
11065
+ padding: 20px;
11066
+
11067
+ & [data-form] {
11068
+ display: grid;
11069
+ grid-template-columns: 1fr 1fr;
11070
+ grid-template-rows: auto auto auto auto auto;
11071
+
11072
+ background-color: transparent;
11073
+
11074
+ & .field-error, & .error-message {
11075
+ background-color: transparent;
11076
+ color: red;
11077
+ }
11078
+
11079
+ & > * {
11080
+ background-color: #80808015;
11081
+ padding: 5px;
11082
+ padding-left: 10px;
11083
+ padding-right: 10px;
11084
+ border-radius: 10px;
11085
+ }
11086
+
11087
+ }
11088
+
11089
+ & .error-message {
11090
+ grid-column: 1 / span 2;
11091
+ grid-row: 1;
11092
+ }
11093
+
11094
+ & .name {
11095
+ grid-column: 1;
11096
+ grid-row: 2;
11097
+ }
11098
+
11099
+ & .contact {
11100
+ grid-column: 2;
11101
+ grid-row: 2;
11102
+ }
11103
+
11104
+ & .questions {
11105
+ grid-column: 1 / span 2;
11106
+ grid-row: 3;
11107
+ }
11108
+
11109
+ & .verify {
11110
+ grid-column: 1 / span 2;
11111
+ grid-row: 4;
11112
+ & img {
11113
+ max-width: 250px;
11114
+ }
11115
+ }
11116
+
11117
+ & .email {
11118
+ grid-column: 1 / span 2;
11119
+ grid-row: 5;
11120
+ background-color: transparent;
11121
+ place-self: center;
11122
+ & button {
11123
+ display: flex;
11124
+ gap: 10px;
11125
+ background-color: lightgreen;
11126
+ font-size: larger;
11127
+ border: none;
11128
+ outline: none;
11129
+ padding: 10px;
11130
+ padding-left: 20px;
11131
+ padding-right: 20px;
11132
+ border-radius: 20px;
11133
+ margin-bottom: 20px;
11134
+ &:hover {
11135
+ box-shadow: 0 0 5px 5px #0000FF50;
11136
+ }
11137
+ }
11138
+ }
11139
+
11064
11140
  & .captcha {
11065
11141
  display: flex;
11066
11142
  flex-direction: column;
11067
11143
  gap: 10px;
11068
11144
  }
11145
+
11146
+
11147
+
11069
11148
  & input, &,textarea {
11070
11149
  border: none;
11071
11150
  outline: none;
11072
11151
  background-color: transparent;
11073
- border-bottom: solid 1px lightgray;
11074
- }
11075
- & button {
11076
- display: flex;
11077
- gap: 10px;
11078
- background-color: lightgreen;
11079
- padding: 2px;
11080
- padding-left: 10px;
11081
- padding-right: 10px;
11082
- border-radius: 10px;
11083
- margin-bottom: 10px;
11084
11152
  }
11085
11153
  `.installGlobal("contact-us");
11086
11154
  ContactUsApp = class ContactUsApp extends AtomControl {
@@ -11101,23 +11169,29 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
11101
11169
  return __awaiter(this, void 0, void 0, function* () {
11102
11170
  const captcha = this.model.captcha = yield FetchBuilder.put("/api/users/captcha").responseAsJson();
11103
11171
  captcha.code = "";
11104
- this.renderer = XNode.create("div", null, XNode.create(Form, null, XNode.create(FormField, {
11172
+ this.renderer = XNode.create("div", {
11173
+ "event-click": e => this.selectInput(e.target)
11174
+ }, XNode.create(Form, null, XNode.create(FormField, {
11175
+ class: "name",
11105
11176
  label: "Your Name",
11106
11177
  error: Bind.oneWay(() => this.model.name ? "" : "Name is required")
11107
11178
  }, XNode.create("input", {
11108
11179
  autofocus: true,
11109
11180
  value: Bind.twoWaysImmediate(() => this.model.name)
11110
11181
  })), XNode.create(FormField, {
11182
+ class: "contact",
11111
11183
  label: "Your Phone/Email",
11112
11184
  error: Bind.oneWay(() => this.model.email || this.model.phone ? "" : "Email or Phone is required")
11113
11185
  }, XNode.create("input", {
11114
11186
  value: Bind.twoWaysImmediate(() => this.model.email)
11115
11187
  })), XNode.create(FormField, {
11188
+ class: "questions",
11116
11189
  label: "Questions"
11117
11190
  }, XNode.create("textarea", {
11118
11191
  rows: "8",
11119
11192
  value: Bind.twoWaysImmediate(() => this.model.description)
11120
11193
  })), XNode.create(FormField, {
11194
+ class: "verify",
11121
11195
  label: "Verify Code",
11122
11196
  error: Bind.oneWay(() => this.model.captcha.code ? "" : "Code is required")
11123
11197
  }, XNode.create("div", null, XNode.create("div", {
@@ -11128,6 +11202,7 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
11128
11202
  type: "tel",
11129
11203
  value: Bind.twoWaysImmediate(() => this.model.captcha.code)
11130
11204
  })))), XNode.create(FormField, {
11205
+ class: "email",
11131
11206
  label: ""
11132
11207
  }, XNode.create("div", null, XNode.create(EmailIconTextButton, {
11133
11208
  "data-submit-event": "send-email",
@@ -11135,6 +11210,17 @@ System.register(["tslib", "@web-atoms/core/dist/core/Bind", "@web-atoms/core/dis
11135
11210
  })))));
11136
11211
  });
11137
11212
  }
11213
+ selectInput(target) {
11214
+ var _a;
11215
+ while (target) {
11216
+ const input = (_a = target.querySelector("input")) !== null && _a !== void 0 ? _a : target.querySelector("textarea");
11217
+ if (input) {
11218
+ input.focus();
11219
+ return;
11220
+ }
11221
+ target = target.parentElement;
11222
+ }
11223
+ }
11138
11224
  sendEmail() {
11139
11225
  return __awaiter(this, void 0, void 0, function* () {
11140
11226
  yield FetchBuilder.post("/api/site/contact").jsonBody(this.model).responseAsJson();