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

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.
@@ -12,6 +12,7 @@ export default class ChannelSubscribersPage extends ContentPage {
12
12
  init(): Promise<void>;
13
13
  addSubscriber(): Promise<void>;
14
14
  deleteSubscribers(): Promise<void>;
15
+ activateSubscribers(): Promise<void>;
15
16
  updateRights(): Promise<void>;
16
17
  }
17
18
  //# sourceMappingURL=ChannelSubscribersPage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelSubscribersPage.d.ts","sourceRoot":"","sources":["../../../../../src/web/page/channels/subscribers/ChannelSubscribersPage.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mDAAmD,CAAC;AAchF,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,WAAW;IAEpD,UAAU,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEnC,OAAO,CAAC,KAAK,CAAW;IAExB,OAAO,CAAC,MAAM,CAAM;IAEpB,OAAO,CAAC,WAAW,CAAyB;IAE5C,OAAO,CAAC,OAAO,CAAK;IAEpB,OAAO,CAAC,QAAQ,CAAyB;IAGzC,OAAO,CAAC,cAAc,CAAiB;IAE1B,IAAI;IAyEX,aAAa;IASb,iBAAiB;IAYjB,YAAY;CAWrB"}
1
+ {"version":3,"file":"ChannelSubscribersPage.d.ts","sourceRoot":"","sources":["../../../../../src/web/page/channels/subscribers/ChannelSubscribersPage.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mDAAmD,CAAC;AAchF,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,WAAW;IAEpD,UAAU,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEnC,OAAO,CAAC,KAAK,CAAW;IAExB,OAAO,CAAC,MAAM,CAAM;IAEpB,OAAO,CAAC,WAAW,CAAyB;IAE5C,OAAO,CAAC,OAAO,CAAK;IAEpB,OAAO,CAAC,QAAQ,CAAyB;IAGzC,OAAO,CAAC,cAAc,CAAiB;IAE1B,IAAI;IA8EX,aAAa;IASb,iBAAiB;IAajB,mBAAmB;IAYnB,YAAY;CAWrB"}
@@ -75,6 +75,7 @@ System.register(["tslib", "@web-atoms/core/dist/core/InjectProperty", "@web-atom
75
75
  value: Bind.twoWaysImmediate(() => this.search)
76
76
  }));
77
77
  this.renderer = XNode.create("div", null, XNode.create(AtomRepeater, Object.assign({
78
+ "data-layout": "data-grid",
78
79
  items: this.subscribers,
79
80
  selectedItems: this.selected,
80
81
  allowMultipleSelection: true
@@ -101,7 +102,10 @@ System.register(["tslib", "@web-atoms/core/dist/core/InjectProperty", "@web-atom
101
102
  this.footerRenderer = () => XNode.create("div", {
102
103
  "style-display": Bind.oneWay(() => this.selected.length > 0),
103
104
  "data-layout": "command-row"
104
- }, XNode.create(DeleteIconTextButton, {
105
+ }, XNode.create(SaveIconTextButton, {
106
+ "data-click-event": "activate-subscribers",
107
+ text: "Activate"
108
+ }), XNode.create(DeleteIconTextButton, {
105
109
  "data-click-event": "delete-subscribers",
106
110
  text: "Delete"
107
111
  }), XNode.create(SaveIconTextButton, {
@@ -128,6 +132,16 @@ System.register(["tslib", "@web-atoms/core/dist/core/InjectProperty", "@web-atom
128
132
  this.version++;
129
133
  });
130
134
  }
135
+ activateSubscribers() {
136
+ return __awaiter(this, void 0, void 0, function* () {
137
+ for (const iterator of this.selected) {
138
+ iterator.status = "active";
139
+ }
140
+ yield this.channelService.saveAll(this.selected);
141
+ this.selected.clear();
142
+ this.version++;
143
+ });
144
+ }
131
145
  updateRights() {
132
146
  return __awaiter(this, void 0, void 0, function* () {
133
147
  const rights = yield PageNavigator.pushPageForResult(UpdateRightsPage);
@@ -149,6 +163,10 @@ System.register(["tslib", "@web-atoms/core/dist/core/InjectProperty", "@web-atom
149
163
  onEvent: "delete-subscribers",
150
164
  confirm: "Are you sure you want to remove selected?"
151
165
  }), __metadata("design:type", Function), __metadata("design:paramtypes", []), __metadata("design:returntype", Promise)], ChannelSubscribersPage.prototype, "deleteSubscribers", null);
166
+ __decorate([Action({
167
+ onEvent: "activate-subscribers",
168
+ confirm: "Are you sure you want to activate given subscribers?"
169
+ }), __metadata("design:type", Function), __metadata("design:paramtypes", []), __metadata("design:returntype", Promise)], ChannelSubscribersPage.prototype, "activateSubscribers", null);
152
170
  __decorate([Action({
153
171
  onEvent: "update-rights"
154
172
  }), __metadata("design:type", Function), __metadata("design:paramtypes", []), __metadata("design:returntype", Promise)], ChannelSubscribersPage.prototype, "updateRights", null);
@@ -1 +1 @@
1
- {"version":3,"names":["ChannelSubscribersPage","_export","setters","_tslib","InjectProperty","_webAtomsCoreDistCoreInjectProperty","default","_webAtomsWebControlsDistMobileAppMobileApp","ContentPage","_servicesChannelService","ChannelService","_webAtomsCoreDistCoreXNode","XNode","_webAtomsWebControlsDistBasicAtomRepeater","AtomRepeater","SelectAll","SelectorCheckBox","_commonControlsRepeaterInfiniteRepeater","InfiniteRepeater","_webAtomsCoreDistCoreBind","Bind","_webAtomsWebControlsDistBasicPopupButton","MenuItem","PopupActionButton","_webAtomsCoreDistViewModelAction","Action","_webAtomsWebControlsDistPageNavigator","PageNavigator","_addAddSubscriberPage","AddSubscriberPage","_commonControlsButtonsIconButton","DeleteIconTextButton","SaveIconTextButton","_rightsUpdateRightsPage","UpdateRightsPage","execute","constructor","search","subscribers","version","selected","init","model","channelService","getMailbox","parameters","id","emailAddress","title","name","actionRenderer","create","class","label","headerRenderer","items","selectedItems","type","value","twoWaysImmediate","renderer","Object","assign","allowMultipleSelection","pagedItems","start","c","e","cancelToken","size","v","itemRenderer","item","text","status","isOwner","canContribute","footerRenderer","oneWay","length","addSubscriber","pushPageForResult","deleteSubscribers","iterator","$deleted","saveAll","clear","updateRights","rights","__decorate","onEvent","confirm"],"sources":["../../../../../src/web/page/channels/subscribers/ChannelSubscribersPage.tsx"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"names":["ChannelSubscribersPage","_export","setters","_tslib","InjectProperty","_webAtomsCoreDistCoreInjectProperty","default","_webAtomsWebControlsDistMobileAppMobileApp","ContentPage","_servicesChannelService","ChannelService","_webAtomsCoreDistCoreXNode","XNode","_webAtomsWebControlsDistBasicAtomRepeater","AtomRepeater","SelectAll","SelectorCheckBox","_commonControlsRepeaterInfiniteRepeater","InfiniteRepeater","_webAtomsCoreDistCoreBind","Bind","_webAtomsWebControlsDistBasicPopupButton","MenuItem","PopupActionButton","_webAtomsCoreDistViewModelAction","Action","_webAtomsWebControlsDistPageNavigator","PageNavigator","_addAddSubscriberPage","AddSubscriberPage","_commonControlsButtonsIconButton","DeleteIconTextButton","SaveIconTextButton","_rightsUpdateRightsPage","UpdateRightsPage","execute","constructor","search","subscribers","version","selected","init","model","channelService","getMailbox","parameters","id","emailAddress","title","name","actionRenderer","create","class","label","headerRenderer","items","selectedItems","type","value","twoWaysImmediate","renderer","Object","assign","allowMultipleSelection","pagedItems","start","c","e","cancelToken","size","v","itemRenderer","item","text","status","isOwner","canContribute","footerRenderer","oneWay","length","addSubscriber","pushPageForResult","deleteSubscribers","iterator","$deleted","saveAll","clear","activateSubscribers","updateRights","rights","__decorate","onEvent","confirm"],"sources":["../../../../../src/web/page/channels/subscribers/ChannelSubscribersPage.tsx"],"sourcesContent":[null],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@social-mail/social-mail-client",
3
- "version": "1.2.1",
3
+ "version": "1.2.3",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -58,7 +58,7 @@ const onAttachInlineImage = async (ce: CustomEvent) => {
58
58
  reader.onload = () => {
59
59
  c.executeCommand("insertHTML", void 0, `<div><img
60
60
  data-content="data-url"
61
- src="${reader.result}" style='max-height: 700px;'/>
61
+ src="${reader.result as any}" style='max-height: 700px;'/>
62
62
  </div>`);
63
63
  };
64
64
  reader.readAsDataURL(file);
@@ -10,6 +10,8 @@ import XNode from "@web-atoms/core/dist/core/XNode";
10
10
  import AtomRepeater from "@web-atoms/web-controls/dist/basic/AtomRepeater";
11
11
  import Bind from "@web-atoms/core/dist/core/Bind";
12
12
  import PopupService from "@web-atoms/core/dist/web/services/PopupService";
13
+ import { IAppFile } from "../../model/model";
14
+ import TaskManager from "@web-atoms/entity/dist/models/TaskManager";
13
15
 
14
16
  export const acceptDocumentAndMedia = ".doc, .docx, application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document, video/*, application/pdf, .pdf, .txt, audio/*, image/*, .csv, text/csv, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/plain, text/html";
15
17
 
@@ -30,16 +32,9 @@ export type UploadedFiles = CustomEvent<{ files: IUploadedFile[], extra: any}>;
30
32
  styled.css `
31
33
  display: inline-grid;
32
34
  grid-template-rows: auto auto;
33
- grid-template-columns: auto 1fr auto;
34
-
35
- & > [data-element=preview] {
36
- grid-row: 1 / span 2;
37
- grid-column: 1;
38
- }
39
35
 
40
36
  & > [data-element=file-name] {
41
37
  grid-row: 1;
42
- grid-column: 2;
43
38
  overflow: hidden;
44
39
  white-space: nowrap;
45
40
  text-overflow: ellipsis;
@@ -47,14 +42,9 @@ export type UploadedFiles = CustomEvent<{ files: IUploadedFile[], extra: any}>;
47
42
 
48
43
  & > [data-element=progress] {
49
44
  grid-row: 2;
50
- grid-column: 2 / span 2;
51
45
  width: 100%;
52
46
  }
53
47
 
54
- & > [data-element=delete] {
55
- grid-row: 1;
56
- grid-column: 3;
57
- }
58
48
  `.installGlobal("[data-attachment-file]");
59
49
 
60
50
  export interface IFileUpload {
@@ -64,12 +54,13 @@ export interface IFileUpload {
64
54
  }
65
55
 
66
56
  @DISingleton()
67
- export default class LocalFileService {
57
+ export default class LocalFileService extends TaskManager {
68
58
 
69
59
  @Inject
70
60
  private app: App;
71
61
 
72
62
  constructor() {
63
+ super();
73
64
  document.body.addEventListener("uploadRequested", (ce: CustomEvent) => {
74
65
  const { target, detail: { files, extra, uploadEvent } } = ce;
75
66
  ce.preventDefault();
@@ -165,14 +156,35 @@ export default class LocalFileService {
165
156
  });
166
157
  }
167
158
 
168
- async upload(files: File[], extra: any, ct?: CancelToken) {
169
- return files.map((file) => {
159
+ upload(files: File[], extra: any, ct?: CancelToken) {
160
+
161
+ const { parentID } = extra;
162
+
163
+ const tasks = [] as IFileUpload[];
164
+ const upload = {
165
+ total: 0,
166
+ tasks,
167
+ progress:0
168
+ };
169
+ for (const file of files) {
170
+ upload.total += file.size;
170
171
  const uploadFile: IFileUpload = {
171
- name: file.name
172
+ name: file.name,
173
+ progress: 0
172
174
  };
173
- uploadFile.promise = this.uploadFile(file, extra, ct, (n) => uploadFile.progress = n);
174
- return uploadFile;
175
- });
175
+ uploadFile.promise = this.run(async () => {
176
+ uploadFile.progress = 0.01;
177
+
178
+ // we will check if file exists and has same sha256?
179
+
180
+ const r = await this.uploadFile(file, extra, ct, (n) => uploadFile.progress = n);
181
+ upload.progress += r.file.size;
182
+ setTimeout(() => tasks.remove(uploadFile), 500);
183
+ return r;
184
+ });
185
+ tasks.push(uploadFile);
186
+ }
187
+ return upload;
176
188
  }
177
189
 
178
190
  }
@@ -197,17 +209,27 @@ class FileUploadWindow extends PopupWindow {
197
209
  await this.requestCancel();
198
210
  }, null, { capture: true });
199
211
 
200
- this.files = await this.localFileService.upload(this.parameters.files, this.parameters.extra, this.cancelToken);
212
+ const task = this.localFileService.upload(this.parameters.files, this.parameters.extra, this.cancelToken);
213
+ this.files = task.tasks;
214
+
215
+ this.footerRenderer = () => <div data-layout="command-row">
216
+ <progress min={0} max={task.total} value={Bind.source(task, (x) => x.source.progress)}/>
217
+ </div>;
201
218
 
202
- this.render(<div>
219
+ this.render(<div
220
+ data-overflow="auto"
221
+ style-max-height="500px"
222
+ style-max-width="400px">
203
223
  <AtomRepeater
224
+ data-layout="vertical-flex-stretch-items"
204
225
  items={this.files}
205
226
  itemRenderer={(file) =>
206
227
  <div data-attachment-file="file">
207
228
  <div data-element="file-name" text={file.name}/>
208
229
  <progress
230
+ style-display={Bind.source(file, (x) => x.source.progress > 0)}
209
231
  min={0}
210
- max={100}
232
+ max={1}
211
233
  value={Bind.source(file, (x) => x.source.progress)}/>
212
234
  </div>}
213
235
  />
@@ -62,6 +62,7 @@ export default class ChannelSubscribersPage extends ContentPage {
62
62
 
63
63
  this.renderer = <div>
64
64
  <AtomRepeater
65
+ data-layout="data-grid"
65
66
  items={this.subscribers}
66
67
  selectedItems={this.selected}
67
68
  allowMultipleSelection={true}
@@ -91,6 +92,10 @@ export default class ChannelSubscribersPage extends ContentPage {
91
92
  this.footerRenderer = () => <div
92
93
  style-display={Bind.oneWay(() => this.selected.length > 0)}
93
94
  data-layout="command-row">
95
+ <SaveIconTextButton
96
+ data-click-event="activate-subscribers"
97
+ text="Activate"
98
+ />
94
99
  <DeleteIconTextButton
95
100
  data-click-event="delete-subscribers"
96
101
  text="Delete"
@@ -121,6 +126,19 @@ export default class ChannelSubscribersPage extends ContentPage {
121
126
  this.version++;
122
127
  }
123
128
 
129
+ @Action({
130
+ onEvent: "activate-subscribers",
131
+ confirm: "Are you sure you want to activate given subscribers?"
132
+ })
133
+ async activateSubscribers() {
134
+ for (const iterator of this.selected) {
135
+ iterator.status = "active";
136
+ }
137
+ await this.channelService.saveAll(this.selected);
138
+ this.selected.clear();
139
+ this.version++;
140
+ }
141
+
124
142
  @Action({
125
143
  onEvent: "update-rights",
126
144
  })