@banta/sdk 4.9.0 → 4.10.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.
@@ -22,6 +22,15 @@ export declare class BantaChatComponent {
22
22
  set source(value: ChatSourceBase);
23
23
  get topicID(): string;
24
24
  set topicID(value: string);
25
+ private _metadata;
26
+ /**
27
+ * Arbitrary metadata to send to the chat server. This can be used to provide context about the client to the server
28
+ * for things like validating authorization and other uses.
29
+ */
30
+ get metadata(): Record<string, any>;
31
+ set metadata(value: Record<string, any>);
32
+ private _reloadSourceTimeout;
33
+ private reloadSource;
25
34
  private setSourceFromTopicID;
26
35
  signInLabel: string;
27
36
  sendLabel: string;
@@ -66,5 +75,5 @@ export declare class BantaChatComponent {
66
75
  newMessage: NewMessageForm;
67
76
  sendMessage(): Promise<void>;
68
77
  static ɵfac: i0.ɵɵFactoryDeclaration<BantaChatComponent, never>;
69
- static ɵcmp: i0.ɵɵComponentDeclaration<BantaChatComponent, "banta-chat", never, { "shouldInterceptMessageSend": "shouldInterceptMessageSend"; "url": "url"; "source": "source"; "topicID": "topicID"; "signInLabel": "signInLabel"; "sendLabel": "sendLabel"; "permissionDeniedLabel": "permissionDeniedLabel"; "messageFieldPlaceholder": "messageFieldPlaceholder"; "emptyLabel": "emptyLabel"; }, { "selected": "selected"; "reported": "reported"; "upvoted": "upvoted"; "userSelected": "userSelected"; "permissionDeniedError": "permissionDeniedError"; "signInSelected": "signInSelected"; "received": "received"; }, never, never, false>;
78
+ static ɵcmp: i0.ɵɵComponentDeclaration<BantaChatComponent, "banta-chat", never, { "shouldInterceptMessageSend": "shouldInterceptMessageSend"; "url": "url"; "source": "source"; "topicID": "topicID"; "metadata": "metadata"; "signInLabel": "signInLabel"; "sendLabel": "sendLabel"; "permissionDeniedLabel": "permissionDeniedLabel"; "messageFieldPlaceholder": "messageFieldPlaceholder"; "emptyLabel": "emptyLabel"; }, { "selected": "selected"; "reported": "reported"; "upvoted": "upvoted"; "userSelected": "userSelected"; "permissionDeniedError": "permissionDeniedError"; "signInSelected": "signInSelected"; "received": "received"; }, never, never, false>;
70
79
  }
@@ -9,6 +9,7 @@ export interface ChatSourceOptions {
9
9
  * How many messages should be loaded initially?
10
10
  */
11
11
  initialMessageCount?: number;
12
+ metadata?: Record<string, any>;
12
13
  }
13
14
  export declare abstract class ChatBackendBase {
14
15
  constructor();
@@ -1,4 +1,4 @@
1
- import { ChatMessage, ChatPermissions, CommentsOrder, DurableSocket } from "@banta/common";
1
+ import { ChatMessage, ChatPermissions, DurableSocket } from "@banta/common";
2
2
  import { SocketRPC } from "@banta/common";
3
3
  import { ChatSourceBase } from "./chat-source-base";
4
4
  import { ChatBackend } from "./chat-backend";
@@ -17,8 +17,8 @@ export declare class ChatSource extends SocketRPC implements ChatSourceBase {
17
17
  ready: Promise<void>;
18
18
  permissions: ChatPermissions;
19
19
  private _state;
20
- get sortOrder(): CommentsOrder;
21
- get filterMode(): import("@banta/common").FilterMode;
20
+ get sortOrder(): "newest" | "oldest" | "likes";
21
+ get filterMode(): string;
22
22
  get state(): "connected" | "connecting" | "lost" | "restored";
23
23
  set state(value: "connected" | "connecting" | "lost" | "restored");
24
24
  private _connectionStateChanged;
@@ -1,5 +1,5 @@
1
1
  import { ElementRef, NgZone, QueryList } from '@angular/core';
2
- import { User, ChatMessage, CommentsOrder, FilterMode } from '@banta/common';
2
+ import { User, ChatMessage } from '@banta/common';
3
3
  import { HashTag } from '../comment-field/comment-field.component';
4
4
  import { Subject, Observable } from 'rxjs';
5
5
  import { ActivatedRoute } from '@angular/router';
@@ -147,19 +147,26 @@ export declare class BantaCommentsComponent {
147
147
  private _reloadSourceTimeout;
148
148
  private reloadSource;
149
149
  private _sortOrder;
150
- get sortOrder(): CommentsOrder;
151
- set sortOrder(value: CommentsOrder);
150
+ get sortOrder(): "newest" | "oldest" | "likes";
151
+ set sortOrder(value: "newest" | "oldest" | "likes");
152
152
  private _filterMode;
153
- get filterMode(): FilterMode;
154
- set filterMode(value: FilterMode);
155
- get filterModes(): FilterMode[];
153
+ get filterMode(): string;
154
+ set filterMode(value: string);
155
+ private _metadata;
156
+ /**
157
+ * Arbitrary metadata to send to the chat server. This can be used to provide context about the client to the server
158
+ * for things like validating authorization and other uses.
159
+ */
160
+ get metadata(): Record<string, any>;
161
+ set metadata(value: Record<string, any>);
162
+ get filterModes(): ("all" | "mine" | "threads" | "my-likes")[];
156
163
  get filterModeLabels(): {
157
164
  all: string;
158
165
  mine: string;
159
166
  threads: string;
160
167
  "my-likes": string;
161
168
  };
162
- get sortOrders(): CommentsOrder[];
169
+ get sortOrders(): ("newest" | "oldest" | "likes")[];
163
170
  get sortOrderLabels(): {
164
171
  newest: string;
165
172
  oldest: string;
@@ -192,5 +199,5 @@ export declare class BantaCommentsComponent {
192
199
  startEditing(message: ChatMessage): Promise<void>;
193
200
  saveEdit(message: ChatMessage, text: string): Promise<void>;
194
201
  static ɵfac: i0.ɵɵFactoryDeclaration<BantaCommentsComponent, never>;
195
- static ɵcmp: i0.ɵɵComponentDeclaration<BantaCommentsComponent, "banta-comments", never, { "customMenuItems": "customMenuItems"; "url": "url"; "maxCommentLength": "maxCommentLength"; "loadingMessages": "loadingMessages"; "useInlineReplies": "useInlineReplies"; "signInLabel": "signInLabel"; "sendLabel": "sendLabel"; "signingInLabel": "signingInLabel"; "replyLabel": "replyLabel"; "sendingLabel": "sendingLabel"; "permissionDeniedLabel": "permissionDeniedLabel"; "postCommentLabel": "postCommentLabel"; "postReplyLabel": "postReplyLabel"; "allowAttachments": "allowAttachments"; "fixedHeight": "fixedHeight"; "maxMessages": "maxMessages"; "maxVisibleMessages": "maxVisibleMessages"; "genericAvatarUrl": "genericAvatarUrl"; "shouldInterceptMessageSend": "shouldInterceptMessageSend"; "participants": "participants"; "source": "source"; "hashtags": "hashtags"; "topicID": "topicID"; "sortOrder": "sortOrder"; "filterMode": "filterMode"; }, { "signInSelected": "signInSelected"; "editAvatarSelected": "editAvatarSelected"; "permissionDeniedError": "permissionDeniedError"; "upvoted": "upvoted"; "reported": "reported"; "selected": "selected"; "userSelected": "userSelected"; "usernameSelected": "usernameSelected"; "avatarSelected": "avatarSelected"; "shared": "shared"; }, ["sendReplyOptionsTemplate"], never, false>;
202
+ static ɵcmp: i0.ɵɵComponentDeclaration<BantaCommentsComponent, "banta-comments", never, { "customMenuItems": "customMenuItems"; "url": "url"; "maxCommentLength": "maxCommentLength"; "loadingMessages": "loadingMessages"; "useInlineReplies": "useInlineReplies"; "signInLabel": "signInLabel"; "sendLabel": "sendLabel"; "signingInLabel": "signingInLabel"; "replyLabel": "replyLabel"; "sendingLabel": "sendingLabel"; "permissionDeniedLabel": "permissionDeniedLabel"; "postCommentLabel": "postCommentLabel"; "postReplyLabel": "postReplyLabel"; "allowAttachments": "allowAttachments"; "fixedHeight": "fixedHeight"; "maxMessages": "maxMessages"; "maxVisibleMessages": "maxVisibleMessages"; "genericAvatarUrl": "genericAvatarUrl"; "shouldInterceptMessageSend": "shouldInterceptMessageSend"; "participants": "participants"; "source": "source"; "hashtags": "hashtags"; "topicID": "topicID"; "sortOrder": "sortOrder"; "filterMode": "filterMode"; "metadata": "metadata"; }, { "signInSelected": "signInSelected"; "editAvatarSelected": "editAvatarSelected"; "permissionDeniedError": "permissionDeniedError"; "upvoted": "upvoted"; "reported": "reported"; "selected": "selected"; "userSelected": "userSelected"; "usernameSelected": "usernameSelected"; "avatarSelected": "avatarSelected"; "shared": "shared"; }, ["sendReplyOptionsTemplate"], never, false>;
196
203
  }
@@ -1,12 +1,16 @@
1
- import { CommentsOrder } from "@banta/common";
2
1
  import * as i0 from "@angular/core";
3
2
  export declare class CommentSortComponent {
4
- commentsOrder: typeof CommentsOrder;
3
+ commentsOrder: {
4
+ readonly NEWEST: "newest";
5
+ readonly OLDEST: "oldest";
6
+ readonly LIKES: "likes";
7
+ readonly options: readonly ["newest", "oldest", "likes"];
8
+ };
5
9
  private _sortChange;
6
10
  private _sort;
7
- get sort(): CommentsOrder;
8
- set sort(value: CommentsOrder);
9
- get sortChange(): import("rxjs").Observable<CommentsOrder>;
11
+ get sort(): "newest" | "oldest" | "likes";
12
+ set sort(value: "newest" | "oldest" | "likes");
13
+ get sortChange(): import("rxjs").Observable<"newest" | "oldest" | "likes">;
10
14
  static ɵfac: i0.ɵɵFactoryDeclaration<CommentSortComponent, never>;
11
15
  static ɵcmp: i0.ɵɵComponentDeclaration<CommentSortComponent, "banta-comment-sort", never, { "sort": "sort"; }, { "sortChange": "sortChange"; }, never, never, false>;
12
16
  }
@@ -1,5 +1,5 @@
1
1
  import { ElementRef, QueryList } from "@angular/core";
2
- import { User, ChatMessage, CommentsOrder, FilterMode } from '@banta/common';
2
+ import { User, ChatMessage } from '@banta/common';
3
3
  import { ChatBackendBase } from "../../chat-backend-base";
4
4
  import { ChatSourceBase } from "../../chat-source-base";
5
5
  import { MessageMenuItem } from "../../message-menu-item";
@@ -62,8 +62,8 @@ export declare class CommentViewComponent {
62
62
  readonly deleted: import("rxjs").Observable<ChatMessage>;
63
63
  readonly selected: import("rxjs").Observable<ChatMessage>;
64
64
  readonly messageEdited: import("rxjs").Observable<EditEvent>;
65
- readonly sortOrderChanged: import("rxjs").Observable<CommentsOrder>;
66
- readonly filterModeChanged: import("rxjs").Observable<FilterMode>;
65
+ readonly sortOrderChanged: import("rxjs").Observable<"newest" | "oldest" | "likes">;
66
+ readonly filterModeChanged: import("rxjs").Observable<string>;
67
67
  commentsQuery: QueryList<CommentComponent>;
68
68
  messageContainer: ElementRef<HTMLElement>;
69
69
  get comments(): CommentComponent[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@banta/sdk",
3
- "version": "4.9.0",
3
+ "version": "4.10.0",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -17,7 +17,7 @@
17
17
  "@angular/router": "^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0 || ^14.0.0",
18
18
  "@astronautlabs/datastore": "^3.1.2",
19
19
  "@astronautlabs/datastore-firestore": "^3.1.2",
20
- "@banta/common": "^2.2.21",
20
+ "@banta/common": "~2.3.1",
21
21
  "@types/marked": "^4.0.3",
22
22
  "@types/dompurify": "^2.3.3",
23
23
  "dompurify": "^2.3.10",