@htmlbricks/hb-messages-topics-card 0.71.36 → 0.72.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 CHANGED
@@ -1,7 +1,6 @@
1
- # hb-messages-topics-card
1
+ # `hb-messages-topics-card`
2
2
 
3
- **Category:** messaging · **Tags:** messaging, chat
4
- **Package:** `@htmlbricks/hb-messages-topics-card`
3
+ **Category:** messaging · **Tags:** messaging, chat · **Package:** `@htmlbricks/hb-messages-topics-card`
5
4
 
6
5
  ## Description
7
6
 
@@ -49,7 +48,7 @@ Per the web component contract, attributes are strings. The primary payload is J
49
48
  | `style` | No | Optional inline host styles (typed on the component surface). |
50
49
  | `chats` | No* | JSON string: array of chat objects (`IChat[]`). Defaults to an empty list if omitted. |
51
50
 
52
- \* **`chats`** is required in the TypeScript **`Component`** type for a fully configured instance; in markup you may omit it and get no rows until you set or update the attribute / property.
51
+ \* In markup you may omit **`chats`** until you set the attribute; the component defaults to an empty list.
53
52
 
54
53
  ### `chats` JSON shape (`IChat`)
55
54
 
@@ -117,8 +116,7 @@ export type IChat = {
117
116
  export type Component = {
118
117
  id?: string;
119
118
  style?: string;
120
-
121
- chats: IChat[];
119
+ chats?: IChat[];
122
120
  };
123
121
 
124
122
  export type Events = {
package/manifest.json CHANGED
@@ -86,6 +86,7 @@
86
86
  "additionalProperties": false,
87
87
  "properties": {
88
88
  "chats": {
89
+ "description": "Parsed from a JSON attribute when omitted in HTML.",
89
90
  "items": {
90
91
  "$ref": "#/definitions/IChat"
91
92
  },
@@ -98,9 +99,6 @@
98
99
  "type": "string"
99
100
  }
100
101
  },
101
- "required": [
102
- "chats"
103
- ],
104
102
  "type": "object"
105
103
  },
106
104
  "IChat": {
@@ -237,7 +235,7 @@
237
235
  "counter": 0,
238
236
  "text": "Hello 0",
239
237
  "title": "Hello0",
240
- "time": "2026-04-17T00:14:14.046Z",
238
+ "time": "2026-04-17T19:26:43.120Z",
241
239
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
242
240
  },
243
241
  {
@@ -245,7 +243,7 @@
245
243
  "counter": 0,
246
244
  "text": "Hello 1",
247
245
  "title": "Hello1",
248
- "time": "2026-04-17T00:14:14.046Z",
246
+ "time": "2026-04-17T19:26:43.120Z",
249
247
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
250
248
  },
251
249
  {
@@ -253,7 +251,7 @@
253
251
  "counter": 0,
254
252
  "text": "Hello 2",
255
253
  "title": "Hello2",
256
- "time": "2026-04-17T00:14:14.046Z",
254
+ "time": "2026-04-17T19:26:43.120Z",
257
255
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
258
256
  }
259
257
  ]
@@ -268,7 +266,7 @@
268
266
  "counter": 0,
269
267
  "text": "Hello 0",
270
268
  "title": "Hello0",
271
- "time": "2026-04-17T00:14:14.046Z",
269
+ "time": "2026-04-17T19:26:43.120Z",
272
270
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
273
271
  },
274
272
  {
@@ -276,7 +274,7 @@
276
274
  "counter": 0,
277
275
  "text": "Hello 1",
278
276
  "title": "Hello1",
279
- "time": "2026-04-17T00:14:14.046Z",
277
+ "time": "2026-04-17T19:26:43.120Z",
280
278
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png",
281
279
  "_selected": true
282
280
  },
@@ -285,7 +283,7 @@
285
283
  "counter": 0,
286
284
  "text": "Hello 2",
287
285
  "title": "Hello2",
288
- "time": "2026-04-17T00:14:14.046Z",
286
+ "time": "2026-04-17T19:26:43.120Z",
289
287
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
290
288
  }
291
289
  ]
@@ -301,7 +299,7 @@
301
299
  "counter": 3,
302
300
  "text": "Can you review the PR?",
303
301
  "title": "Engineering",
304
- "time": "2026-04-17T00:14:14.046Z",
302
+ "time": "2026-04-17T19:26:43.120Z",
305
303
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
306
304
  },
307
305
  {
@@ -309,7 +307,7 @@
309
307
  "counter": 12,
310
308
  "text": "Contract signed",
311
309
  "title": "Sales",
312
- "time": "2026-04-17T00:14:14.046Z",
310
+ "time": "2026-04-17T19:26:43.120Z",
313
311
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
314
312
  },
315
313
  {
@@ -317,7 +315,7 @@
317
315
  "counter": 1,
318
316
  "text": "Ticket #4421 updated",
319
317
  "title": "Support",
320
- "time": "2026-04-17T00:14:14.046Z",
318
+ "time": "2026-04-17T19:26:43.120Z",
321
319
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png"
322
320
  }
323
321
  ]
@@ -333,7 +331,7 @@
333
331
  "counter": 0,
334
332
  "text": "Only conversation in the list",
335
333
  "title": "Direct message",
336
- "time": "2026-04-17T00:14:14.046Z",
334
+ "time": "2026-04-17T19:26:43.120Z",
337
335
  "img_uri": "https://www.w3schools.com/howto/img_avatar.png",
338
336
  "_selected": true
339
337
  }
@@ -362,5 +360,5 @@
362
360
  "size": {},
363
361
  "iifePath": "main.iife.js",
364
362
  "repoName": "@htmlbricks/hb-messages-topics-card",
365
- "version": "0.71.36"
363
+ "version": "0.72.0"
366
364
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@htmlbricks/hb-messages-topics-card",
3
- "version": "0.71.36",
3
+ "version": "0.72.0",
4
4
  "contributors": [],
5
5
  "description": "Lists chat or channel previews from `chats`: avatar, title, last message snippet, derived time label, and unread `counter` badge. Clicking a row marks it selected (`_selected`) and dispatches `select` with that chat payload for opening a thread or switching context.",
6
6
  "licenses": [
@@ -6,6 +6,7 @@
6
6
  "additionalProperties": false,
7
7
  "properties": {
8
8
  "chats": {
9
+ "description": "Parsed from a JSON attribute when omitted in HTML.",
9
10
  "items": {
10
11
  "$ref": "#/definitions/IChat"
11
12
  },
@@ -18,9 +19,6 @@
18
19
  "type": "string"
19
20
  }
20
21
  },
21
- "required": [
22
- "chats"
23
- ],
24
22
  "type": "object"
25
23
  },
26
24
  "IChat": {
@@ -19,8 +19,8 @@ export type IChat = {
19
19
  export type Component = {
20
20
  id?: string;
21
21
  style?: string;
22
-
23
- chats: IChat[];
22
+ /** Parsed from a JSON attribute when omitted in HTML. */
23
+ chats?: IChat[];
24
24
  };
25
25
 
26
26
  export type Events = {