@trycourier/react-hooks 1.48.5 → 1.48.6-internal.2f25754.0
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.
- package/README.md +221 -3
- package/dist/inbox/actions/init.js +4 -5
- package/dist/inbox/actions/mark-all-read.js +33 -2
- package/dist/inbox/elemental-inbox/reducer.js +6 -6
- package/dist/inbox/elemental-inbox/use-inbox-actions.js +32 -7
- package/dist/inbox/reducer.js +33 -7
- package/dist/inbox/use-inbox-actions.js +7 -6
- package/package.json +3 -3
- package/typings/inbox/actions/init.d.ts +3 -3
- package/typings/inbox/actions/init.d.ts.map +1 -1
- package/typings/inbox/actions/mark-all-read.d.ts +22 -0
- package/typings/inbox/actions/mark-all-read.d.ts.map +1 -1
- package/typings/inbox/actions/rehydrate-messages.d.ts +4 -3
- package/typings/inbox/actions/rehydrate-messages.d.ts.map +1 -1
- package/typings/inbox/elemental-inbox/reducer.d.ts +7 -7
- package/typings/inbox/elemental-inbox/reducer.d.ts.map +1 -1
- package/typings/inbox/elemental-inbox/types.d.ts +1 -1
- package/typings/inbox/elemental-inbox/types.d.ts.map +1 -1
- package/typings/inbox/elemental-inbox/use-inbox-actions.d.ts +15 -1
- package/typings/inbox/elemental-inbox/use-inbox-actions.d.ts.map +1 -1
- package/typings/inbox/reducer.d.ts +4 -4
- package/typings/inbox/reducer.d.ts.map +1 -1
- package/typings/inbox/types.d.ts +5 -2
- package/typings/inbox/types.d.ts.map +1 -1
- package/typings/inbox/use-inbox-actions.d.ts +2 -2
- package/typings/inbox/use-inbox-actions.d.ts.map +1 -1
- package/dist/inbox/elemental-inbox/actions/init.js +0 -17
- package/dist/inbox/elemental-inbox/actions/mark-message-archived.js +0 -19
- package/dist/inbox/elemental-inbox/actions/mark-message-read.js +0 -19
- package/dist/inbox/elemental-inbox/actions/mark-message-unread.js +0 -19
- package/dist/inbox/elemental-inbox/actions/set-view.js +0 -17
- package/dist/inbox/elemental-inbox/actions/toggle-inbox.js +0 -17
- package/typings/inbox/elemental-inbox/actions/init.d.ts +0 -8
- package/typings/inbox/elemental-inbox/actions/init.d.ts.map +0 -1
- package/typings/inbox/elemental-inbox/actions/mark-message-archived.d.ts +0 -9
- package/typings/inbox/elemental-inbox/actions/mark-message-archived.d.ts.map +0 -1
- package/typings/inbox/elemental-inbox/actions/mark-message-read.d.ts +0 -9
- package/typings/inbox/elemental-inbox/actions/mark-message-read.d.ts.map +0 -1
- package/typings/inbox/elemental-inbox/actions/mark-message-unread.d.ts +0 -9
- package/typings/inbox/elemental-inbox/actions/mark-message-unread.d.ts.map +0 -1
- package/typings/inbox/elemental-inbox/actions/set-view.d.ts +0 -9
- package/typings/inbox/elemental-inbox/actions/set-view.d.ts.map +0 -1
- package/typings/inbox/elemental-inbox/actions/toggle-inbox.d.ts +0 -7
- package/typings/inbox/elemental-inbox/actions/toggle-inbox.d.ts.map +0 -1
package/README.md
CHANGED
|
@@ -15,11 +15,107 @@
|
|
|
15
15
|
|
|
16
16
|
This also enables using this package with `react-native` in a much simpler way.
|
|
17
17
|
|
|
18
|
+
#### Elemental Inbox
|
|
19
|
+
|
|
20
|
+
React Hooks exposes two inbox hooks, `useInbox` and `useElementalInbox`. Elemental inbox is a new inbox
|
|
21
|
+
that takes advantage of Courier's content specification, [Elemental](https://www.courier.com/docs/elemental/).
|
|
22
|
+
|
|
23
|
+
Elemental provides a more advanced format for delivered
|
|
24
|
+
notifications. This includes the ability to add customized buttons, images, and markdown formatted text
|
|
25
|
+
to your messages.
|
|
26
|
+
|
|
27
|
+
See [types](#1typesmd) for details on the interface.
|
|
28
|
+
|
|
29
|
+
#### Example Usage
|
|
30
|
+
|
|
31
|
+
```tsx
|
|
32
|
+
import { CourierProvider } from "@trycourier/react-provider";
|
|
33
|
+
import { useElementalInbox } from "@trycourier/react-hooks";
|
|
34
|
+
|
|
35
|
+
const MyApp = () => {
|
|
36
|
+
/**
|
|
37
|
+
* Auth token for courier provider, can be a token from Courier's auth/issue-token endpoint
|
|
38
|
+
* or a JWT signed with a valid courier api key. Must include scope: "user_id:<user_id_here> inbox:read:messages"
|
|
39
|
+
*
|
|
40
|
+
* For more information on the auth/issue-token endpoint, visit:
|
|
41
|
+
* https://courier.com/docs/reference/auth/intro/
|
|
42
|
+
*/
|
|
43
|
+
const authorization = await fetchAuthToken();
|
|
44
|
+
|
|
45
|
+
return (
|
|
46
|
+
<CourierProvider authorization="abc123">
|
|
47
|
+
<MyInbox />
|
|
48
|
+
</CourierProvider>
|
|
49
|
+
);
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
const MyInbox = () => {
|
|
53
|
+
const inbox = useElementalInbox();
|
|
54
|
+
|
|
55
|
+
useEffect(() => {
|
|
56
|
+
inbox.fetchMessages();
|
|
57
|
+
}, []);
|
|
58
|
+
|
|
59
|
+
// Sets message.read to current date
|
|
60
|
+
const handleReadMessage = (message) => () => {
|
|
61
|
+
inbox.markMessageRead(message.messageId);
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
// Removes message.read
|
|
65
|
+
const handleUnreadMessage = (message) => () => {
|
|
66
|
+
inbox.markMessageUnread(message.messageId);
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
// Archived messages are not included in inbox.fetchMessages()
|
|
70
|
+
const handleArchiveMessage = (message) => () => {
|
|
71
|
+
inbox.markMessageArchived(message.messageId);
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
// If the supplied authorization token is short lived, renew the session with a fresh token
|
|
75
|
+
// proactively before the token is set to expire. Here we use 5 minutes assuming our token only
|
|
76
|
+
// lasts 10 minutes
|
|
77
|
+
useEffect(() => {
|
|
78
|
+
const interval = setInterval(async () => {
|
|
79
|
+
const authorization = await fetchAuthToken();
|
|
80
|
+
inbox.renewSession(authorization);
|
|
81
|
+
}, 300000);
|
|
82
|
+
|
|
83
|
+
// Return a cleanup function to tell react how to stop renewal when the component is unmounted.
|
|
84
|
+
return () => clearInterval(interval);
|
|
85
|
+
}, []);
|
|
86
|
+
|
|
87
|
+
return (
|
|
88
|
+
<>
|
|
89
|
+
{inbox.messages.map((message) => {
|
|
90
|
+
return (
|
|
91
|
+
<Message>
|
|
92
|
+
{message.read ? (
|
|
93
|
+
<>
|
|
94
|
+
<button onClick={handleUnreadMessage(message)}>
|
|
95
|
+
Unread Me
|
|
96
|
+
</button>
|
|
97
|
+
<button onClick={handleArchiveMessage(message)}>
|
|
98
|
+
Archive Me
|
|
99
|
+
</button>
|
|
100
|
+
</>
|
|
101
|
+
) : (
|
|
102
|
+
<button onClick={handleReadMessage(message)}>Read Me</button>
|
|
103
|
+
)}
|
|
104
|
+
</Message>
|
|
105
|
+
);
|
|
106
|
+
})}
|
|
107
|
+
</>
|
|
108
|
+
);
|
|
109
|
+
};
|
|
110
|
+
```
|
|
111
|
+
|
|
18
112
|
<a name="1typesmd"></a>
|
|
19
113
|
|
|
20
114
|
### [Types](#types)
|
|
21
115
|
|
|
22
|
-
|
|
116
|
+
Standard Inbox (`useInbox`):
|
|
117
|
+
|
|
118
|
+
```ts
|
|
23
119
|
const inbox: IInbox & IInboxActions = useInbox();
|
|
24
120
|
|
|
25
121
|
interface ITab {
|
|
@@ -74,6 +170,66 @@ interface IInbox {
|
|
|
74
170
|
}
|
|
75
171
|
```
|
|
76
172
|
|
|
173
|
+
Elemental Inbox (`useElementalInbox`):
|
|
174
|
+
|
|
175
|
+
```ts
|
|
176
|
+
// This interface defines the return value of useElemental Inbox
|
|
177
|
+
interface IElementalInbox {
|
|
178
|
+
lastMessagesFetched?: number;
|
|
179
|
+
brand?: Brand;
|
|
180
|
+
from?: number;
|
|
181
|
+
isLoading?: boolean;
|
|
182
|
+
isOpen?: boolean;
|
|
183
|
+
messages?: Array<IElementalInboxMessage>;
|
|
184
|
+
startCursor?: string;
|
|
185
|
+
unreadMessageCount?: number;
|
|
186
|
+
view?: "messages" | "preferences";
|
|
187
|
+
/** Fetches messages from the server, sets inbox.messages to the received value */
|
|
188
|
+
fetchMessages: (params?: IFetchMessagesParams) => void;
|
|
189
|
+
/** Returns a count of messages that do not have a message.read date */
|
|
190
|
+
getUnreadMessageCount: (params?: IGetInboxMessagesParams) => void;
|
|
191
|
+
init: (inbox: IElementalInbox) => void;
|
|
192
|
+
/** Marks all messages as read by setting message.read to the current ISO 8601 date */
|
|
193
|
+
markAllAsRead: () => void;
|
|
194
|
+
/** Archives the supplied message, archived messages are not returned by fetchMessages */
|
|
195
|
+
markMessageArchived: (messageId: string) => Promise<void>;
|
|
196
|
+
/** Sets message.read to the current ISO 8601 date */
|
|
197
|
+
markMessageRead: (messageId: string) => Promise<void>;
|
|
198
|
+
/** Removes message.read, signalling that the message is no longer read */
|
|
199
|
+
markMessageUnread: (messageId: string) => Promise<void>;
|
|
200
|
+
setView: (view: "messages" | "preferences") => void;
|
|
201
|
+
toggleInbox: (isOpen?: boolean) => void;
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* Allows for renewal of sessions authorized with short lived tokens.
|
|
205
|
+
* For example, if the supplied authorization token lasts 10 minutes,
|
|
206
|
+
* this function can be called with a new token every 5 minutes to ensure
|
|
207
|
+
* messages are received in real time with no interruptions.
|
|
208
|
+
*/
|
|
209
|
+
renewSession: (authorization: string) => void;
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
interface IInboxMessage {
|
|
213
|
+
created?: string;
|
|
214
|
+
messageId: string;
|
|
215
|
+
preview?: string;
|
|
216
|
+
/** ISO 8601 date the message was read */
|
|
217
|
+
read?: string;
|
|
218
|
+
title?: string;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
export interface IFetchMessagesParams {
|
|
222
|
+
params?: IGetInboxMessagesParams;
|
|
223
|
+
after?: string;
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
export interface IGetInboxMessagesParams {
|
|
227
|
+
status?: "read" | "unread";
|
|
228
|
+
limit?: number;
|
|
229
|
+
tags?: string[];
|
|
230
|
+
}
|
|
231
|
+
```
|
|
232
|
+
|
|
77
233
|
<a name="2eventsmd"></a>
|
|
78
234
|
|
|
79
235
|
### [Events](#events)
|
|
@@ -95,7 +251,7 @@ Some of these events are called automatically.
|
|
|
95
251
|
- Delivered events are called automatically inside the Courier Provider when a message has been delivered through the websocket
|
|
96
252
|
- Click events are triggered using our `click through tracking` links. Click events will also automatically trigger a `read` event.
|
|
97
253
|
|
|
98
|
-
#### Manually calling events
|
|
254
|
+
#### Manually calling events (`useInbox` Example)
|
|
99
255
|
|
|
100
256
|
You can call events manually by importing the corresponding function from the react hook.
|
|
101
257
|
|
|
@@ -138,7 +294,69 @@ const MyInbox = () => {
|
|
|
138
294
|
|
|
139
295
|
return (
|
|
140
296
|
<Container>
|
|
141
|
-
{inbox.
|
|
297
|
+
{inbox.messages.map((message) => {
|
|
298
|
+
return (
|
|
299
|
+
<Message>
|
|
300
|
+
{message.read ? (
|
|
301
|
+
<>
|
|
302
|
+
<button onClick={handleUnreadMessage(message)}>
|
|
303
|
+
Unread Me
|
|
304
|
+
</button>
|
|
305
|
+
<button onClick={handleArchiveMessage(message)}>
|
|
306
|
+
Archive Me
|
|
307
|
+
</button>
|
|
308
|
+
</>
|
|
309
|
+
) : (
|
|
310
|
+
<button onClick={handleReadMessage(message)}>Read Me</button>
|
|
311
|
+
)}
|
|
312
|
+
</Message>
|
|
313
|
+
);
|
|
314
|
+
})}
|
|
315
|
+
</Container>
|
|
316
|
+
);
|
|
317
|
+
};
|
|
318
|
+
|
|
319
|
+
const MyApp = () => {
|
|
320
|
+
return (
|
|
321
|
+
<CourierProvider userId="MY_USER_ID" clientKey="MY_CLIENT_KEY">
|
|
322
|
+
<MyInbox />
|
|
323
|
+
</CourierProvider>
|
|
324
|
+
);
|
|
325
|
+
};
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
#### Manually calling events (`useElementalInbox` Example)
|
|
329
|
+
|
|
330
|
+
You can call events manually by importing the corresponding function from the react hook.
|
|
331
|
+
|
|
332
|
+
For Example:
|
|
333
|
+
|
|
334
|
+
```js
|
|
335
|
+
import { CourierProvider } from "@trycourier/react-provider";
|
|
336
|
+
import { useElementalInbox } from "@trycourier/react-hooks";
|
|
337
|
+
|
|
338
|
+
const MyInbox = () => {
|
|
339
|
+
const inbox = useElementalInbox();
|
|
340
|
+
|
|
341
|
+
useEffect(() => {
|
|
342
|
+
inbox.fetchMessages();
|
|
343
|
+
}, []);
|
|
344
|
+
|
|
345
|
+
const handleReadMessage = (message) => () => {
|
|
346
|
+
inbox.markMessageRead(message.messageId);
|
|
347
|
+
};
|
|
348
|
+
|
|
349
|
+
const handleUnreadMessage = (message) => () => {
|
|
350
|
+
inbox.markMessageUnread(message.messageId);
|
|
351
|
+
};
|
|
352
|
+
|
|
353
|
+
const handleArchiveMessage = (message) => () => {
|
|
354
|
+
inbox.markMessageArchived(message.messageId);
|
|
355
|
+
};
|
|
356
|
+
|
|
357
|
+
return (
|
|
358
|
+
<Container>
|
|
359
|
+
{inbox.messages.map((message) => {
|
|
142
360
|
return (
|
|
143
361
|
<Message>
|
|
144
362
|
{message.read ? (
|
|
@@ -3,15 +3,14 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.initInbox =
|
|
6
|
+
exports.initInbox = initInbox;
|
|
7
|
+
exports.INBOX_INIT = void 0;
|
|
7
8
|
var INBOX_INIT = "inbox/INIT";
|
|
8
9
|
exports.INBOX_INIT = INBOX_INIT;
|
|
9
10
|
|
|
10
|
-
|
|
11
|
+
function initInbox(payload) {
|
|
11
12
|
return {
|
|
12
13
|
type: INBOX_INIT,
|
|
13
14
|
payload: payload
|
|
14
15
|
};
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
exports.initInbox = initInbox;
|
|
16
|
+
}
|
|
@@ -3,9 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.markAllRead = exports.INBOX_MARK_ALL_READ = void 0;
|
|
6
|
+
exports.markAllReadDone = exports.markAllReadError = exports.markAllReadPending = exports.markAllRead = exports.INBOX_MARK_ALL_READ_ERROR = exports.INBOX_MARK_ALL_READ_DONE = exports.INBOX_MARK_ALL_READ_PENDING = exports.INBOX_MARK_ALL_READ = void 0;
|
|
7
7
|
var INBOX_MARK_ALL_READ = "inbox/MARK_ALL_READ";
|
|
8
8
|
exports.INBOX_MARK_ALL_READ = INBOX_MARK_ALL_READ;
|
|
9
|
+
var INBOX_MARK_ALL_READ_PENDING = "inbox/MARK_ALL_READ/PENDING";
|
|
10
|
+
exports.INBOX_MARK_ALL_READ_PENDING = INBOX_MARK_ALL_READ_PENDING;
|
|
11
|
+
var INBOX_MARK_ALL_READ_DONE = "inbox/MARK_ALL_READ/DONE";
|
|
12
|
+
exports.INBOX_MARK_ALL_READ_DONE = INBOX_MARK_ALL_READ_DONE;
|
|
13
|
+
var INBOX_MARK_ALL_READ_ERROR = "inbox/MARK_ALL_READ/ERROR";
|
|
14
|
+
exports.INBOX_MARK_ALL_READ_ERROR = INBOX_MARK_ALL_READ_ERROR;
|
|
9
15
|
|
|
10
16
|
var markAllRead = function markAllRead() {
|
|
11
17
|
return {
|
|
@@ -13,4 +19,29 @@ var markAllRead = function markAllRead() {
|
|
|
13
19
|
};
|
|
14
20
|
};
|
|
15
21
|
|
|
16
|
-
exports.markAllRead = markAllRead;
|
|
22
|
+
exports.markAllRead = markAllRead;
|
|
23
|
+
|
|
24
|
+
var markAllReadPending = function markAllReadPending() {
|
|
25
|
+
return {
|
|
26
|
+
type: INBOX_MARK_ALL_READ_PENDING
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
exports.markAllReadPending = markAllReadPending;
|
|
31
|
+
|
|
32
|
+
var markAllReadError = function markAllReadError() {
|
|
33
|
+
return {
|
|
34
|
+
type: INBOX_MARK_ALL_READ_ERROR
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
exports.markAllReadError = markAllReadError;
|
|
39
|
+
|
|
40
|
+
var markAllReadDone = function markAllReadDone(payload) {
|
|
41
|
+
return {
|
|
42
|
+
type: INBOX_MARK_ALL_READ_DONE,
|
|
43
|
+
payload: payload
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
exports.markAllReadDone = markAllReadDone;
|
|
@@ -11,21 +11,21 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
|
|
|
11
11
|
|
|
12
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
13
|
|
|
14
|
-
var _init = require("
|
|
14
|
+
var _init = require("../actions/init");
|
|
15
15
|
|
|
16
|
-
var _setView = require("
|
|
16
|
+
var _setView = require("../actions/set-view");
|
|
17
17
|
|
|
18
|
-
var _toggleInbox = require("
|
|
18
|
+
var _toggleInbox = require("../actions/toggle-inbox");
|
|
19
19
|
|
|
20
20
|
var _markAllRead = require("./actions/mark-all-read");
|
|
21
21
|
|
|
22
22
|
var _newMessage = require("./actions/new-message");
|
|
23
23
|
|
|
24
|
-
var _markMessageArchived = require("
|
|
24
|
+
var _markMessageArchived = require("../actions/mark-message-archived");
|
|
25
25
|
|
|
26
|
-
var _markMessageRead = require("
|
|
26
|
+
var _markMessageRead = require("../actions/mark-message-read");
|
|
27
27
|
|
|
28
|
-
var _markMessageUnread = require("
|
|
28
|
+
var _markMessageUnread = require("../actions/mark-message-unread");
|
|
29
29
|
|
|
30
30
|
var _fetchUnreadMessageCount = require("./actions/fetch-unread-message-count");
|
|
31
31
|
|
|
@@ -17,19 +17,19 @@ var _reactProvider = require("@trycourier/react-provider");
|
|
|
17
17
|
|
|
18
18
|
var _clientGraphql = require("@trycourier/client-graphql");
|
|
19
19
|
|
|
20
|
-
var _init = require("
|
|
20
|
+
var _init = require("../actions/init");
|
|
21
21
|
|
|
22
|
-
var _toggleInbox2 = require("
|
|
22
|
+
var _toggleInbox2 = require("../actions/toggle-inbox");
|
|
23
23
|
|
|
24
|
-
var _setView2 = require("
|
|
24
|
+
var _setView2 = require("../actions/set-view");
|
|
25
25
|
|
|
26
|
-
var _markMessageRead3 = require("
|
|
26
|
+
var _markMessageRead3 = require("../actions/mark-message-read");
|
|
27
27
|
|
|
28
28
|
var _markAllRead = require("./actions/mark-all-read");
|
|
29
29
|
|
|
30
|
-
var _markMessageUnread3 = require("
|
|
30
|
+
var _markMessageUnread3 = require("../actions/mark-message-unread");
|
|
31
31
|
|
|
32
|
-
var _markMessageArchived3 = require("
|
|
32
|
+
var _markMessageArchived3 = require("../actions/mark-message-archived");
|
|
33
33
|
|
|
34
34
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
35
35
|
|
|
@@ -43,7 +43,8 @@ var useElementalInboxActions = function useElementalInboxActions() {
|
|
|
43
43
|
dispatch = _useCourier.dispatch,
|
|
44
44
|
inbox = _useCourier.inbox,
|
|
45
45
|
userId = _useCourier.userId,
|
|
46
|
-
userSignature = _useCourier.userSignature
|
|
46
|
+
userSignature = _useCourier.userSignature,
|
|
47
|
+
transport = _useCourier.transport;
|
|
47
48
|
|
|
48
49
|
var courierClient = (0, _clientGraphql.createCourierClient)({
|
|
49
50
|
authorization: authorization,
|
|
@@ -192,6 +193,30 @@ var useElementalInboxActions = function useElementalInboxActions() {
|
|
|
192
193
|
}
|
|
193
194
|
|
|
194
195
|
return markMessageArchived;
|
|
196
|
+
}(),
|
|
197
|
+
renewSession: function () {
|
|
198
|
+
var _renewSession = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(token) {
|
|
199
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
200
|
+
while (1) {
|
|
201
|
+
switch (_context5.prev = _context5.next) {
|
|
202
|
+
case 0:
|
|
203
|
+
if (transport instanceof _reactProvider.CourierTransport) {
|
|
204
|
+
transport.renewSession(token);
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
case 1:
|
|
208
|
+
case "end":
|
|
209
|
+
return _context5.stop();
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}, _callee5);
|
|
213
|
+
}));
|
|
214
|
+
|
|
215
|
+
function renewSession(_x4) {
|
|
216
|
+
return _renewSession.apply(this, arguments);
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
return renewSession;
|
|
195
220
|
}()
|
|
196
221
|
};
|
|
197
222
|
};
|
package/dist/inbox/reducer.js
CHANGED
|
@@ -41,14 +41,14 @@ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (O
|
|
|
41
41
|
|
|
42
42
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
43
43
|
|
|
44
|
-
var mapMessage = function mapMessage(message) {
|
|
44
|
+
var mapMessage = function mapMessage(message, lastMarkedAllRead) {
|
|
45
45
|
return {
|
|
46
46
|
blocks: message.content.blocks,
|
|
47
47
|
body: message.content.body,
|
|
48
48
|
created: message.created,
|
|
49
49
|
data: message.content.data,
|
|
50
50
|
messageId: message.messageId,
|
|
51
|
-
read: message.read,
|
|
51
|
+
read: lastMarkedAllRead ? lastMarkedAllRead > new Date(message.created).getTime() ? true : message.read : message.read,
|
|
52
52
|
title: message.content.title,
|
|
53
53
|
trackingIds: message.content.trackingIds
|
|
54
54
|
};
|
|
@@ -148,6 +148,7 @@ var _default = function _default() {
|
|
|
148
148
|
|
|
149
149
|
if (!state.tabs && action.payload.messages) {
|
|
150
150
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
151
|
+
lastMessagesFetched: action.payload.lastMessagesFetched,
|
|
151
152
|
messages: action.payload.messages,
|
|
152
153
|
startCursor: action.payload.startCursor,
|
|
153
154
|
unreadMessageCount: action.payload.unreadMessageCount
|
|
@@ -176,6 +177,7 @@ var _default = function _default() {
|
|
|
176
177
|
}
|
|
177
178
|
|
|
178
179
|
return _objectSpread(_objectSpread(_objectSpread({}, state), newTabs === null || newTabs === void 0 ? void 0 : (_newTabs$ = newTabs[0]) === null || _newTabs$ === void 0 ? void 0 : _newTabs$.state), {}, {
|
|
180
|
+
lastMessagesFetched: action.payload.lastMessagesFetched,
|
|
179
181
|
tabs: newTabs,
|
|
180
182
|
unreadMessageCount: action.payload.unreadMessageCount
|
|
181
183
|
});
|
|
@@ -203,6 +205,7 @@ var _default = function _default() {
|
|
|
203
205
|
});
|
|
204
206
|
return _objectSpread(_objectSpread(_objectSpread({}, state), currentTab === null || currentTab === void 0 ? void 0 : currentTab.state), {}, {
|
|
205
207
|
isLoading: false,
|
|
208
|
+
lastMessagesFetched: new Date().getTime(),
|
|
206
209
|
tabs: _newTabs
|
|
207
210
|
});
|
|
208
211
|
}
|
|
@@ -211,7 +214,9 @@ var _default = function _default() {
|
|
|
211
214
|
{
|
|
212
215
|
var _state$tabs3, _state$currentTab2, _action$meta2;
|
|
213
216
|
|
|
214
|
-
var mappedMessages = action.payload.messages.map(
|
|
217
|
+
var mappedMessages = action.payload.messages.map(function (message) {
|
|
218
|
+
return mapMessage(message, state.lastMarkedAllRead);
|
|
219
|
+
});
|
|
215
220
|
|
|
216
221
|
if (!state.tabs) {
|
|
217
222
|
var _state$messages;
|
|
@@ -220,8 +225,9 @@ var _default = function _default() {
|
|
|
220
225
|
|
|
221
226
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
222
227
|
isLoading: false,
|
|
223
|
-
|
|
224
|
-
messages: _newMessages
|
|
228
|
+
lastMessagesFetched: new Date().getTime(),
|
|
229
|
+
messages: _newMessages,
|
|
230
|
+
startCursor: action.payload.startCursor
|
|
225
231
|
});
|
|
226
232
|
}
|
|
227
233
|
|
|
@@ -245,12 +251,14 @@ var _default = function _default() {
|
|
|
245
251
|
if (((_state$currentTab2 = state.currentTab) === null || _state$currentTab2 === void 0 ? void 0 : _state$currentTab2.id) !== ((_action$meta2 = action.meta) === null || _action$meta2 === void 0 ? void 0 : _action$meta2.tabId)) {
|
|
246
252
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
247
253
|
isLoading: false,
|
|
254
|
+
lastMessagesFetched: new Date().getTime(),
|
|
248
255
|
tabs: tabs
|
|
249
256
|
});
|
|
250
257
|
}
|
|
251
258
|
|
|
252
259
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
253
260
|
isLoading: false,
|
|
261
|
+
lastMessagesFetched: new Date().getTime(),
|
|
254
262
|
messages: newMessages,
|
|
255
263
|
startCursor: action.payload.startCursor,
|
|
256
264
|
tabs: tabs
|
|
@@ -261,7 +269,7 @@ var _default = function _default() {
|
|
|
261
269
|
{
|
|
262
270
|
var _state$unreadMessageC, _currentTab$filters, _state$messages3, _state$tabs5;
|
|
263
271
|
|
|
264
|
-
var unreadMessageCount = Math.max(((_state$unreadMessageC = state.unreadMessageCount) !== null && _state$unreadMessageC !== void 0 ? _state$unreadMessageC : 0) - 1
|
|
272
|
+
var unreadMessageCount = Math.max(((_state$unreadMessageC = state.unreadMessageCount) !== null && _state$unreadMessageC !== void 0 ? _state$unreadMessageC : 0) - 1);
|
|
265
273
|
var _currentTab = state.currentTab;
|
|
266
274
|
|
|
267
275
|
if ((_currentTab === null || _currentTab === void 0 ? void 0 : (_currentTab$filters = _currentTab.filters) === null || _currentTab$filters === void 0 ? void 0 : _currentTab$filters.isRead) === false) {
|
|
@@ -459,7 +467,21 @@ var _default = function _default() {
|
|
|
459
467
|
});
|
|
460
468
|
}
|
|
461
469
|
|
|
462
|
-
case _markAllRead.
|
|
470
|
+
case _markAllRead.INBOX_MARK_ALL_READ_PENDING:
|
|
471
|
+
{
|
|
472
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
473
|
+
markingAllAsRead: true
|
|
474
|
+
});
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
case _markAllRead.INBOX_MARK_ALL_READ_ERROR:
|
|
478
|
+
{
|
|
479
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
480
|
+
markingAllAsRead: false
|
|
481
|
+
});
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
case _markAllRead.INBOX_MARK_ALL_READ_DONE:
|
|
463
485
|
{
|
|
464
486
|
var _currentTab3$filters, _state$messages7, _state$tabs9;
|
|
465
487
|
|
|
@@ -490,6 +512,8 @@ var _default = function _default() {
|
|
|
490
512
|
});
|
|
491
513
|
|
|
492
514
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
515
|
+
lastMarkedAllRead: new Date().getTime(),
|
|
516
|
+
markingAllAsRead: false,
|
|
493
517
|
messages: [],
|
|
494
518
|
tabs: _tabs6,
|
|
495
519
|
unreadMessageCount: _unreadMessageCount3
|
|
@@ -523,6 +547,8 @@ var _default = function _default() {
|
|
|
523
547
|
});
|
|
524
548
|
|
|
525
549
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
550
|
+
lastMarkedAllRead: new Date().getTime(),
|
|
551
|
+
markingAllAsRead: false,
|
|
526
552
|
messages: _newMessages7,
|
|
527
553
|
tabs: _tabs5,
|
|
528
554
|
unreadMessageCount: _unreadMessageCount3
|
|
@@ -27,8 +27,6 @@ var _setCurrentTab2 = require("./actions/set-current-tab");
|
|
|
27
27
|
|
|
28
28
|
var _markMessageRead3 = require("./actions/mark-message-read");
|
|
29
29
|
|
|
30
|
-
var _markAllRead = require("./actions/mark-all-read");
|
|
31
|
-
|
|
32
30
|
var _markMessageUnread3 = require("./actions/mark-message-unread");
|
|
33
31
|
|
|
34
32
|
var _markMessageArchived3 = require("./actions/mark-message-archived");
|
|
@@ -269,11 +267,14 @@ var useInboxActions = function useInboxActions() {
|
|
|
269
267
|
while (1) {
|
|
270
268
|
switch (_context3.prev = _context3.next) {
|
|
271
269
|
case 0:
|
|
272
|
-
dispatch(
|
|
273
|
-
|
|
274
|
-
|
|
270
|
+
dispatch({
|
|
271
|
+
type: "inbox/MARK_ALL_READ",
|
|
272
|
+
payload: function payload() {
|
|
273
|
+
return events.trackEventBatch("read");
|
|
274
|
+
}
|
|
275
|
+
});
|
|
275
276
|
|
|
276
|
-
case
|
|
277
|
+
case 1:
|
|
277
278
|
case "end":
|
|
278
279
|
return _context3.stop();
|
|
279
280
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@trycourier/react-hooks",
|
|
3
|
-
"version": "1.48.
|
|
3
|
+
"version": "1.48.6-internal.2f25754.0+2f25754",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "typings/index.d.ts",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"concat-md": "^0.3.5"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@trycourier/client-graphql": "^1.48.
|
|
23
|
+
"@trycourier/client-graphql": "^1.48.6-internal.2f25754.0+2f25754",
|
|
24
24
|
"deep-extend": "^0.6.0",
|
|
25
25
|
"rimraf": "^3.0.2"
|
|
26
26
|
},
|
|
@@ -36,5 +36,5 @@
|
|
|
36
36
|
".": "./dist/index.js",
|
|
37
37
|
"./use-inbox": "./dist/inbox/use-inbox.js"
|
|
38
38
|
},
|
|
39
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "2f2575421ba3e0822a4355f742410528ecb0b2b8"
|
|
40
40
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { IInbox } from "../types";
|
|
2
|
-
export declare type InboxInit = {
|
|
2
|
+
export declare type InboxInit<T = IInbox> = {
|
|
3
3
|
type: "inbox/INIT";
|
|
4
|
-
payload:
|
|
4
|
+
payload: T;
|
|
5
5
|
};
|
|
6
6
|
export declare const INBOX_INIT = "inbox/INIT";
|
|
7
|
-
export declare
|
|
7
|
+
export declare function initInbox<T = IInbox>(payload: T): InboxInit<T>;
|
|
8
8
|
//# sourceMappingURL=init.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/inbox/actions/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,oBAAY,SAAS,GAAG;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/inbox/actions/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,oBAAY,SAAS,CAAC,CAAC,GAAG,MAAM,IAAI;IAClC,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,CAAC,CAAC;CACZ,CAAC;AAEF,eAAO,MAAM,UAAU,eAAe,CAAC;AAEvC,wBAAgB,SAAS,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAK9D"}
|
|
@@ -1,6 +1,28 @@
|
|
|
1
1
|
export declare type MarkAllRead = {
|
|
2
2
|
type: "inbox/MARK_ALL_READ";
|
|
3
3
|
};
|
|
4
|
+
export declare type MarkAllReadPending = {
|
|
5
|
+
type: "inbox/MARK_ALL_READ/PENDING";
|
|
6
|
+
};
|
|
7
|
+
export declare type MarkAllReadError = {
|
|
8
|
+
type: "inbox/MARK_ALL_READ/ERROR";
|
|
9
|
+
};
|
|
10
|
+
export declare type MarkAllReadDone = {
|
|
11
|
+
type: "inbox/MARK_ALL_READ/DONE";
|
|
12
|
+
payload: {
|
|
13
|
+
ids: string[];
|
|
14
|
+
};
|
|
15
|
+
};
|
|
4
16
|
export declare const INBOX_MARK_ALL_READ = "inbox/MARK_ALL_READ";
|
|
17
|
+
export declare const INBOX_MARK_ALL_READ_PENDING = "inbox/MARK_ALL_READ/PENDING";
|
|
18
|
+
export declare const INBOX_MARK_ALL_READ_DONE = "inbox/MARK_ALL_READ/DONE";
|
|
19
|
+
export declare const INBOX_MARK_ALL_READ_ERROR = "inbox/MARK_ALL_READ/ERROR";
|
|
5
20
|
export declare const markAllRead: () => MarkAllRead;
|
|
21
|
+
export declare const markAllReadPending: () => MarkAllReadPending;
|
|
22
|
+
export declare const markAllReadError: () => MarkAllReadError;
|
|
23
|
+
interface MarkAllReadDonePayload {
|
|
24
|
+
ids: string[];
|
|
25
|
+
}
|
|
26
|
+
export declare const markAllReadDone: (payload: MarkAllReadDonePayload) => MarkAllReadDone;
|
|
27
|
+
export {};
|
|
6
28
|
//# sourceMappingURL=mark-all-read.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mark-all-read.d.ts","sourceRoot":"","sources":["../../../src/inbox/actions/mark-all-read.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,qBAAqB,CAAC;CAC7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"mark-all-read.d.ts","sourceRoot":"","sources":["../../../src/inbox/actions/mark-all-read.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,qBAAqB,CAAC;CAC7B,CAAC;AAEF,oBAAY,kBAAkB,GAAG;IAC/B,IAAI,EAAE,6BAA6B,CAAC;CACrC,CAAC;AAEF,oBAAY,gBAAgB,GAAG;IAC7B,IAAI,EAAE,2BAA2B,CAAC;CACnC,CAAC;AAEF,oBAAY,eAAe,GAAG;IAC5B,IAAI,EAAE,0BAA0B,CAAC;IACjC,OAAO,EAAE;QACP,GAAG,EAAE,MAAM,EAAE,CAAC;KACf,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,mBAAmB,wBAAwB,CAAC;AACzD,eAAO,MAAM,2BAA2B,gCAAgC,CAAC;AACzE,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AACnE,eAAO,MAAM,yBAAyB,8BAA8B,CAAC;AAErE,eAAO,MAAM,WAAW,QAAO,WAE7B,CAAC;AAEH,eAAO,MAAM,kBAAkB,QAAO,kBAEpC,CAAC;AAEH,eAAO,MAAM,gBAAgB,QAAO,gBAElC,CAAC;AAEH,UAAU,sBAAsB;IAC9B,GAAG,EAAE,MAAM,EAAE,CAAC;CACf;AAED,eAAO,MAAM,eAAe,YACjB,sBAAsB,KAC9B,eAGD,CAAC"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { IMessage, ITab } from "../types";
|
|
2
|
-
export declare type
|
|
2
|
+
export declare type RehydrateMessages = {
|
|
3
3
|
type: "inbox/REHYDRATE_MESSAGES";
|
|
4
4
|
payload: {
|
|
5
|
-
|
|
5
|
+
lastMessagesFetched?: number;
|
|
6
6
|
messages?: IMessage[];
|
|
7
7
|
startCursor?: string;
|
|
8
|
+
tabs?: ITab[];
|
|
8
9
|
unreadMessageCount?: number;
|
|
9
10
|
};
|
|
10
11
|
};
|
|
11
12
|
export declare const INBOX_REHYDRATE_MESSAGES = "inbox/REHYDRATE_MESSAGES";
|
|
12
|
-
export declare const rehydrateMessages: (payload:
|
|
13
|
+
export declare const rehydrateMessages: (payload: RehydrateMessages["payload"]) => RehydrateMessages;
|
|
13
14
|
//# sourceMappingURL=rehydrate-messages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rehydrate-messages.d.ts","sourceRoot":"","sources":["../../../src/inbox/actions/rehydrate-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAE1C,oBAAY,iBAAiB,GAAG;IAC9B,IAAI,EAAE,0BAA0B,CAAC;IACjC,OAAO,EAAE;QACP,
|
|
1
|
+
{"version":3,"file":"rehydrate-messages.d.ts","sourceRoot":"","sources":["../../../src/inbox/actions/rehydrate-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAE1C,oBAAY,iBAAiB,GAAG;IAC9B,IAAI,EAAE,0BAA0B,CAAC;IACjC,OAAO,EAAE;QACP,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;QACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,wBAAwB,6BAA6B,CAAC;AAEnE,eAAO,MAAM,iBAAiB,YACnB,iBAAiB,CAAC,SAAS,CAAC,KACpC,iBAGD,CAAC"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { IElementalInbox } from "./types";
|
|
2
|
-
import { InboxInit } from "
|
|
3
|
-
import { InboxSetView } from "
|
|
4
|
-
import { ToggleInbox } from "
|
|
2
|
+
import { InboxInit } from "../actions/init";
|
|
3
|
+
import { InboxSetView } from "../actions/set-view";
|
|
4
|
+
import { ToggleInbox } from "../actions/toggle-inbox";
|
|
5
5
|
import { MarkAllRead } from "./actions/mark-all-read";
|
|
6
6
|
import { NewMessage } from "./actions/new-message";
|
|
7
|
-
import { MarkMessageArchived } from "
|
|
8
|
-
import { MarkMessageRead } from "
|
|
9
|
-
import { MarkMessageUnread } from "
|
|
7
|
+
import { MarkMessageArchived } from "../actions/mark-message-archived";
|
|
8
|
+
import { MarkMessageRead } from "../actions/mark-message-read";
|
|
9
|
+
import { MarkMessageUnread } from "../actions/mark-message-unread";
|
|
10
10
|
import { FetchUnreadMessageCountDone } from "./actions/fetch-unread-message-count";
|
|
11
11
|
import { FetchMessagesDone, FetchMessagesError, FetchMessagesPending } from "./actions/fetch-messages";
|
|
12
12
|
export declare const initialState: IElementalInbox;
|
|
13
|
-
declare type ElementalInboxAction = FetchMessagesDone | FetchMessagesError | FetchMessagesPending | FetchUnreadMessageCountDone | InboxInit | InboxSetView | MarkAllRead | MarkMessageArchived | MarkMessageRead | MarkMessageUnread | NewMessage | ToggleInbox;
|
|
13
|
+
declare type ElementalInboxAction = FetchMessagesDone | FetchMessagesError | FetchMessagesPending | FetchUnreadMessageCountDone | InboxInit<IElementalInbox> | InboxSetView | MarkAllRead | MarkMessageArchived | MarkMessageRead | MarkMessageUnread | NewMessage | ToggleInbox;
|
|
14
14
|
declare const _default: (state?: IElementalInbox, action?: ElementalInboxAction | undefined) => IElementalInbox;
|
|
15
15
|
export default _default;
|
|
16
16
|
//# sourceMappingURL=reducer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../../src/inbox/elemental-inbox/reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAiC,MAAM,SAAS,CAAC;AACzE,OAAO,EAAE,SAAS,EAAc,MAAM,
|
|
1
|
+
{"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../../src/inbox/elemental-inbox/reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAiC,MAAM,SAAS,CAAC;AACzE,OAAO,EAAE,SAAS,EAAc,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAkB,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAgB,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAuB,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAqB,MAAM,uBAAuB,CAAC;AACtE,OAAO,EACL,mBAAmB,EAEpB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,eAAe,EAEhB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,iBAAiB,EAElB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,2BAA2B,EAE5B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EAIrB,MAAM,0BAA0B,CAAC;AAElC,eAAO,MAAM,YAAY,EAAE,eAK1B,CAAC;AAEF,aAAK,oBAAoB,GACrB,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,2BAA2B,GAC3B,SAAS,CAAC,eAAe,CAAC,GAC1B,YAAY,GACZ,WAAW,GACX,mBAAmB,GACnB,eAAe,GACf,iBAAiB,GACjB,UAAU,GACV,WAAW,CAAC;iCAGP,eAAe,gDAErB,eAAe;AAHlB,wBAuKE"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { IInboxMessage, IInboxMessagePreview } from "@trycourier/client-graphql";
|
|
2
2
|
import { Brand } from "@trycourier/react-provider";
|
|
3
3
|
export interface IElementalInbox {
|
|
4
|
-
lastMessagesFetched?: number;
|
|
5
4
|
brand?: Brand;
|
|
6
5
|
from?: number;
|
|
7
6
|
isLoading?: boolean;
|
|
8
7
|
isOpen?: boolean;
|
|
8
|
+
lastMessagesFetched?: number;
|
|
9
9
|
messages?: Array<IElementalInboxMessagePreview>;
|
|
10
10
|
startCursor?: string;
|
|
11
11
|
unreadMessageCount?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/inbox/elemental-inbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC9B,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/inbox/elemental-inbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,oBAAoB,EACrB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,UAAU,GAAG,aAAa,CAAC;CACnC;AAED,oBAAY,sBAAsB,GAAG,aAAa,CAAC;AACnD,oBAAY,6BAA6B,GAAG,oBAAoB,CAAC"}
|
|
@@ -1,19 +1,33 @@
|
|
|
1
1
|
import { IElementalInbox } from "./types";
|
|
2
2
|
import { IGetInboxMessagesParams } from "@trycourier/client-graphql";
|
|
3
|
+
import { IInbox } from "../types";
|
|
3
4
|
export interface IFetchMessagesParams {
|
|
4
5
|
params?: IGetInboxMessagesParams;
|
|
5
6
|
after?: string;
|
|
6
7
|
}
|
|
7
8
|
interface IInboxActions {
|
|
9
|
+
/** Fetches messages from the server, sets inbox.messages to the received value */
|
|
8
10
|
fetchMessages: (params?: IFetchMessagesParams) => void;
|
|
11
|
+
/** Returns a count of messages that do not have a message.read date */
|
|
9
12
|
getUnreadMessageCount: (params?: IGetInboxMessagesParams) => void;
|
|
10
|
-
init: (inbox: IElementalInbox) => void;
|
|
13
|
+
init: (inbox: IInbox<IElementalInbox>) => void;
|
|
14
|
+
/** Marks all messages as read by setting message.read to the current ISO 8601 date */
|
|
11
15
|
markAllAsRead: () => void;
|
|
16
|
+
/** Archives the supplied message, archived messages are not returned by fetchMessages */
|
|
12
17
|
markMessageArchived: (messageId: string) => Promise<void>;
|
|
18
|
+
/** Sets message.read to the current ISO 8601 date */
|
|
13
19
|
markMessageRead: (messageId: string) => Promise<void>;
|
|
20
|
+
/** Removes message.read, signalling that the message is no longer read */
|
|
14
21
|
markMessageUnread: (messageId: string) => Promise<void>;
|
|
15
22
|
setView: (view: "messages" | "preferences") => void;
|
|
16
23
|
toggleInbox: (isOpen?: boolean) => void;
|
|
24
|
+
/**
|
|
25
|
+
* Allows for renewal of sessions authorized with short lived tokens.
|
|
26
|
+
* For example, if the supplied authorization token lasts 10 minutes,
|
|
27
|
+
* this function can be called with a new token every 5 minutes to ensure
|
|
28
|
+
* messages are received in real time with no interruptions.
|
|
29
|
+
*/
|
|
30
|
+
renewSession: (authorization: string) => void;
|
|
17
31
|
}
|
|
18
32
|
declare const useElementalInboxActions: () => IInboxActions;
|
|
19
33
|
export default useElementalInboxActions;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-inbox-actions.d.ts","sourceRoot":"","sources":["../../../src/inbox/elemental-inbox/use-inbox-actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"use-inbox-actions.d.ts","sourceRoot":"","sources":["../../../src/inbox/elemental-inbox/use-inbox-actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAQrE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,uBAAuB,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,aAAa;IACrB,kFAAkF;IAClF,aAAa,EAAE,CAAC,MAAM,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACvD,uEAAuE;IACvE,qBAAqB,EAAE,CAAC,MAAM,CAAC,EAAE,uBAAuB,KAAK,IAAI,CAAC;IAClE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,KAAK,IAAI,CAAC;IAC/C,sFAAsF;IACtF,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,yFAAyF;IACzF,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,sDAAsD;IACtD,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,0EAA0E;IAC1E,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,OAAO,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,KAAK,IAAI,CAAC;IACpD,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC;;;;;OAKG;IACH,YAAY,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C;AAED,QAAA,MAAM,wBAAwB,QAAO,aAsFpC,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
|
|
@@ -3,9 +3,9 @@ import { IMessage, IInbox } from "./types";
|
|
|
3
3
|
import { InboxInit } from "./actions/init";
|
|
4
4
|
import { InboxSetView } from "./actions/set-view";
|
|
5
5
|
import { ToggleInbox } from "./actions/toggle-inbox";
|
|
6
|
-
import {
|
|
6
|
+
import { MarkAllReadDone, MarkAllReadPending, MarkAllReadError } from "./actions/mark-all-read";
|
|
7
7
|
import { NewMessage } from "./actions/new-message";
|
|
8
|
-
import {
|
|
8
|
+
import { RehydrateMessages } from "./actions/rehydrate-messages";
|
|
9
9
|
import { MarkMessageArchived } from "./actions/mark-message-archived";
|
|
10
10
|
import { MarkMessageRead } from "./actions/mark-message-read";
|
|
11
11
|
import { MarkMessageUnread } from "./actions/mark-message-unread";
|
|
@@ -13,9 +13,9 @@ import { FetchUnreadMessageCountDone } from "./actions/fetch-unread-message-coun
|
|
|
13
13
|
import { FetchMessagesDone, FetchMessagesError, FetchMessagesPending } from "./actions/fetch-messages";
|
|
14
14
|
import { FetchMessageListsDone, FetchMessageListsError, FetchMessageListsPending } from "./actions/fetch-message-lists";
|
|
15
15
|
import { SetCurrentTab } from "./actions/set-current-tab";
|
|
16
|
-
export declare const mapMessage: (message: IGraphMessageResponse) => IMessage;
|
|
16
|
+
export declare const mapMessage: (message: IGraphMessageResponse, lastMarkedAllRead?: number | undefined) => IMessage;
|
|
17
17
|
export declare const initialState: IInbox;
|
|
18
|
-
declare type InboxAction = FetchMessageListsDone | FetchMessageListsError | FetchMessageListsPending | FetchMessagesDone | FetchMessagesError | FetchMessagesPending | FetchUnreadMessageCountDone | InboxInit | InboxSetView |
|
|
18
|
+
declare type InboxAction = FetchMessageListsDone | FetchMessageListsError | FetchMessageListsPending | FetchMessagesDone | FetchMessagesError | FetchMessagesPending | FetchUnreadMessageCountDone | InboxInit | InboxSetView | MarkAllReadError | MarkAllReadPending | MarkAllReadDone | RehydrateMessages | MarkMessageArchived | MarkMessageRead | MarkMessageUnread | NewMessage | SetCurrentTab | ToggleInbox;
|
|
19
19
|
declare const _default: (state?: IInbox, action?: InboxAction | undefined) => IInbox;
|
|
20
20
|
export default _default;
|
|
21
21
|
//# sourceMappingURL=reducer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../src/inbox/reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAQ,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAc,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAkB,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAgB,MAAM,wBAAwB,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../src/inbox/reducer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAQ,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,SAAS,EAAc,MAAM,gBAAgB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAkB,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAgB,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAEL,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAGjB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAqB,MAAM,uBAAuB,CAAC;AACtE,OAAO,EACL,iBAAiB,EAElB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,mBAAmB,EAEpB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,eAAe,EAEhB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,iBAAiB,EAElB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,2BAA2B,EAE5B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EAIrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EAIzB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,aAAa,EAEd,MAAM,2BAA2B,CAAC;AAEnC,eAAO,MAAM,UAAU,YACZ,qBAAqB,6CAE7B,QAaD,CAAC;AAEH,eAAO,MAAM,YAAY,EAAE,MAK1B,CAAC;AAEF,aAAK,WAAW,GACZ,qBAAqB,GACrB,sBAAsB,GACtB,wBAAwB,GACxB,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,2BAA2B,GAC3B,SAAS,GACT,YAAY,GACZ,gBAAgB,GAChB,kBAAkB,GAClB,eAAe,GACf,iBAAiB,GACjB,mBAAmB,GACnB,eAAe,GACf,iBAAiB,GACjB,UAAU,GACV,aAAa,GACb,WAAW,CAAC;iCAEO,MAAM,uCAAwC,MAAM;AAA3E,wBAmeE"}
|
package/typings/inbox/types.d.ts
CHANGED
|
@@ -30,14 +30,17 @@ export interface IMessage {
|
|
|
30
30
|
unreadTrackingId: string;
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
|
-
export interface IInbox {
|
|
33
|
+
export interface IInbox<T = IMessage> {
|
|
34
34
|
autoMarkAsRead?: boolean;
|
|
35
35
|
brand?: Brand;
|
|
36
36
|
currentTab?: ITab;
|
|
37
37
|
from?: number;
|
|
38
38
|
isLoading?: boolean;
|
|
39
39
|
isOpen?: boolean;
|
|
40
|
-
|
|
40
|
+
lastMarkedAllRead?: number;
|
|
41
|
+
lastMessagesFetched?: number;
|
|
42
|
+
markingAllAsRead?: boolean;
|
|
43
|
+
messages?: Array<T>;
|
|
41
44
|
startCursor?: string;
|
|
42
45
|
tabs?: ITab[];
|
|
43
46
|
unreadMessageCount?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/inbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7E,MAAM,WAAW,IAAI;IACnB,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE;QACN,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,MAAM;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/inbox/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7E,MAAM,WAAW,IAAI;IACnB,OAAO,EAAE;QACP,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE;QACN,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,KAAK,CAAC,YAAY,GAAG,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,iBAAiB,EAAE,MAAM,CAAC;QAC1B,eAAe,EAAE,MAAM,CAAC;QACxB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH;AAED,MAAM,WAAW,MAAM,CAAC,CAAC,GAAG,QAAQ;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACd,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,UAAU,GAAG,aAAa,CAAC;CACnC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { IInbox, ITab } from "./types";
|
|
2
2
|
import { IGetMessagesParams } from "@trycourier/client-graphql";
|
|
3
|
-
import {
|
|
3
|
+
import { RehydrateMessages } from "./actions/rehydrate-messages";
|
|
4
4
|
export interface IFetchMessagesParams {
|
|
5
5
|
params?: IGetMessagesParams;
|
|
6
6
|
after?: string;
|
|
@@ -14,7 +14,7 @@ interface IInboxActions {
|
|
|
14
14
|
markMessageArchived: (messageId: string, trackingId: string) => Promise<void>;
|
|
15
15
|
markMessageRead: (messageId: string, trackingId?: string) => Promise<void>;
|
|
16
16
|
markMessageUnread: (messageId: string, trackingId: string) => Promise<void>;
|
|
17
|
-
rehydrateMessages: (payload:
|
|
17
|
+
rehydrateMessages: (payload: RehydrateMessages["payload"]) => void;
|
|
18
18
|
setCurrentTab: (newTab: ITab) => void;
|
|
19
19
|
setView: (view: "messages" | "preferences") => void;
|
|
20
20
|
toggleInbox: (isOpen?: boolean) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-inbox-actions.d.ts","sourceRoot":"","sources":["../../src/inbox/use-inbox-actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AASvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"use-inbox-actions.d.ts","sourceRoot":"","sources":["../../src/inbox/use-inbox-actions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AASvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAQhE,OAAO,EAEL,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,aAAa;IACrB,iBAAiB,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IAC3C,aAAa,EAAE,CAAC,MAAM,CAAC,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACvD,qBAAqB,EAAE,CAAC,MAAM,CAAC,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC7D,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3E,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,iBAAiB,EAAE,CAAC,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;IACnE,aAAa,EAAE,CAAC,MAAM,EAAE,IAAI,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,aAAa,KAAK,IAAI,CAAC;IACpD,WAAW,EAAE,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;CACzC;AAED,QAAA,MAAM,eAAe,QAAO,aA4J3B,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.initInbox = exports.INBOX_INIT = void 0;
|
|
7
|
-
var INBOX_INIT = "inbox/INIT";
|
|
8
|
-
exports.INBOX_INIT = INBOX_INIT;
|
|
9
|
-
|
|
10
|
-
var initInbox = function initInbox(payload) {
|
|
11
|
-
return {
|
|
12
|
-
type: INBOX_INIT,
|
|
13
|
-
payload: payload
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
exports.initInbox = initInbox;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.markMessageArchived = exports.INBOX_MARK_MESSAGE_ARCHIVED = void 0;
|
|
7
|
-
var INBOX_MARK_MESSAGE_ARCHIVED = "inbox/MARK_MESSAGE_ARCHIVED";
|
|
8
|
-
exports.INBOX_MARK_MESSAGE_ARCHIVED = INBOX_MARK_MESSAGE_ARCHIVED;
|
|
9
|
-
|
|
10
|
-
var markMessageArchived = function markMessageArchived(messageId) {
|
|
11
|
-
return {
|
|
12
|
-
type: INBOX_MARK_MESSAGE_ARCHIVED,
|
|
13
|
-
payload: {
|
|
14
|
-
messageId: messageId
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
exports.markMessageArchived = markMessageArchived;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.markMessageRead = exports.INBOX_MARK_MESSAGE_READ = void 0;
|
|
7
|
-
var INBOX_MARK_MESSAGE_READ = "inbox/MARK_MESSAGE_READ";
|
|
8
|
-
exports.INBOX_MARK_MESSAGE_READ = INBOX_MARK_MESSAGE_READ;
|
|
9
|
-
|
|
10
|
-
var markMessageRead = function markMessageRead(messageId) {
|
|
11
|
-
return {
|
|
12
|
-
type: INBOX_MARK_MESSAGE_READ,
|
|
13
|
-
payload: {
|
|
14
|
-
messageId: messageId
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
exports.markMessageRead = markMessageRead;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.markMessageUnread = exports.INBOX_MARK_MESSAGE_UNREAD = void 0;
|
|
7
|
-
var INBOX_MARK_MESSAGE_UNREAD = "inbox/MARK_MESSAGE_UNREAD";
|
|
8
|
-
exports.INBOX_MARK_MESSAGE_UNREAD = INBOX_MARK_MESSAGE_UNREAD;
|
|
9
|
-
|
|
10
|
-
var markMessageUnread = function markMessageUnread(messageId) {
|
|
11
|
-
return {
|
|
12
|
-
type: INBOX_MARK_MESSAGE_UNREAD,
|
|
13
|
-
payload: {
|
|
14
|
-
messageId: messageId
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
exports.markMessageUnread = markMessageUnread;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.setView = exports.INBOX_SET_VIEW = void 0;
|
|
7
|
-
var INBOX_SET_VIEW = "inbox/SET_VIEW";
|
|
8
|
-
exports.INBOX_SET_VIEW = INBOX_SET_VIEW;
|
|
9
|
-
|
|
10
|
-
var setView = function setView(view) {
|
|
11
|
-
return {
|
|
12
|
-
type: INBOX_SET_VIEW,
|
|
13
|
-
payload: view
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
exports.setView = setView;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.toggleInbox = exports.INBOX_TOGGLE = void 0;
|
|
7
|
-
var INBOX_TOGGLE = "inbox/TOGGLE_INBOX";
|
|
8
|
-
exports.INBOX_TOGGLE = INBOX_TOGGLE;
|
|
9
|
-
|
|
10
|
-
var toggleInbox = function toggleInbox(isOpen) {
|
|
11
|
-
return {
|
|
12
|
-
type: INBOX_TOGGLE,
|
|
13
|
-
payload: isOpen
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
exports.toggleInbox = toggleInbox;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { IElementalInbox } from "../types";
|
|
2
|
-
export declare type InboxInit = {
|
|
3
|
-
type: "inbox/INIT";
|
|
4
|
-
payload: IElementalInbox;
|
|
5
|
-
};
|
|
6
|
-
export declare const INBOX_INIT = "inbox/INIT";
|
|
7
|
-
export declare const initInbox: (payload: IElementalInbox) => InboxInit;
|
|
8
|
-
//# sourceMappingURL=init.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../src/inbox/elemental-inbox/actions/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,oBAAY,SAAS,GAAG;IACtB,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,eAAe,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,UAAU,eAAe,CAAC;AAEvC,eAAO,MAAM,SAAS,YAAa,eAAe,KAAG,SAGnD,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export declare type MarkMessageArchived = {
|
|
2
|
-
type: "inbox/MARK_MESSAGE_ARCHIVED";
|
|
3
|
-
payload: {
|
|
4
|
-
messageId: string;
|
|
5
|
-
};
|
|
6
|
-
};
|
|
7
|
-
export declare const INBOX_MARK_MESSAGE_ARCHIVED = "inbox/MARK_MESSAGE_ARCHIVED";
|
|
8
|
-
export declare const markMessageArchived: (messageId: string) => MarkMessageArchived;
|
|
9
|
-
//# sourceMappingURL=mark-message-archived.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mark-message-archived.d.ts","sourceRoot":"","sources":["../../../../src/inbox/elemental-inbox/actions/mark-message-archived.ts"],"names":[],"mappings":"AAAA,oBAAY,mBAAmB,GAAG;IAChC,IAAI,EAAE,6BAA6B,CAAC;IACpC,OAAO,EAAE;QACP,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,2BAA2B,gCAAgC,CAAC;AAEzE,eAAO,MAAM,mBAAmB,cACnB,MAAM,KAChB,mBAKD,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export declare type MarkMessageRead = {
|
|
2
|
-
type: "inbox/MARK_MESSAGE_READ";
|
|
3
|
-
payload: {
|
|
4
|
-
messageId: string;
|
|
5
|
-
};
|
|
6
|
-
};
|
|
7
|
-
export declare const INBOX_MARK_MESSAGE_READ = "inbox/MARK_MESSAGE_READ";
|
|
8
|
-
export declare const markMessageRead: (messageId: string) => MarkMessageRead;
|
|
9
|
-
//# sourceMappingURL=mark-message-read.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mark-message-read.d.ts","sourceRoot":"","sources":["../../../../src/inbox/elemental-inbox/actions/mark-message-read.ts"],"names":[],"mappings":"AAAA,oBAAY,eAAe,GAAG;IAC5B,IAAI,EAAE,yBAAyB,CAAC;IAChC,OAAO,EAAE;QACP,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,uBAAuB,4BAA4B,CAAC;AAEjE,eAAO,MAAM,eAAe,cAAe,MAAM,KAAG,eAKlD,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export declare type MarkMessageUnread = {
|
|
2
|
-
type: "inbox/MARK_MESSAGE_UNREAD";
|
|
3
|
-
payload: {
|
|
4
|
-
messageId: string;
|
|
5
|
-
};
|
|
6
|
-
};
|
|
7
|
-
export declare const INBOX_MARK_MESSAGE_UNREAD = "inbox/MARK_MESSAGE_UNREAD";
|
|
8
|
-
export declare const markMessageUnread: (messageId: string) => MarkMessageUnread;
|
|
9
|
-
//# sourceMappingURL=mark-message-unread.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mark-message-unread.d.ts","sourceRoot":"","sources":["../../../../src/inbox/elemental-inbox/actions/mark-message-unread.ts"],"names":[],"mappings":"AAAA,oBAAY,iBAAiB,GAAG;IAC9B,IAAI,EAAE,2BAA2B,CAAC;IAClC,OAAO,EAAE;QACP,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,yBAAyB,8BAA8B,CAAC;AAErE,eAAO,MAAM,iBAAiB,cAAe,MAAM,KAAG,iBAKpD,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
declare type InboxView = "messages" | "preferences";
|
|
2
|
-
export declare type InboxSetView = {
|
|
3
|
-
type: "inbox/SET_VIEW";
|
|
4
|
-
payload: InboxView;
|
|
5
|
-
};
|
|
6
|
-
export declare const INBOX_SET_VIEW = "inbox/SET_VIEW";
|
|
7
|
-
export declare const setView: (view: "messages" | "preferences") => InboxSetView;
|
|
8
|
-
export {};
|
|
9
|
-
//# sourceMappingURL=set-view.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"set-view.d.ts","sourceRoot":"","sources":["../../../../src/inbox/elemental-inbox/actions/set-view.ts"],"names":[],"mappings":"AAAA,aAAK,SAAS,GAAG,UAAU,GAAG,aAAa,CAAC;AAE5C,oBAAY,YAAY,GAAG;IACzB,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,EAAE,SAAS,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,cAAc,mBAAmB,CAAC;AAE/C,eAAO,MAAM,OAAO,SAAU,UAAU,GAAG,aAAa,KAAG,YAGzD,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export declare type ToggleInbox = {
|
|
2
|
-
type: "inbox/TOGGLE_INBOX";
|
|
3
|
-
payload?: boolean;
|
|
4
|
-
};
|
|
5
|
-
export declare const INBOX_TOGGLE = "inbox/TOGGLE_INBOX";
|
|
6
|
-
export declare const toggleInbox: (isOpen?: boolean | undefined) => ToggleInbox;
|
|
7
|
-
//# sourceMappingURL=toggle-inbox.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toggle-inbox.d.ts","sourceRoot":"","sources":["../../../../src/inbox/elemental-inbox/actions/toggle-inbox.ts"],"names":[],"mappings":"AAAA,oBAAY,WAAW,GAAG;IACxB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,YAAY,uBAAuB,CAAC;AAEjD,eAAO,MAAM,WAAW,oCAAuB,WAG7C,CAAC"}
|