@cdevhub/ngx-chat 1.0.6 → 1.0.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cdevhub/ngx-chat",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "A pure presentational Angular 21 library for building chat interfaces",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -2238,7 +2238,131 @@ declare class ChatMessagesComponent implements OnDestroy {
2238
2238
  * Optional configuration override.
2239
2239
  * If not provided, uses global configuration.
2240
2240
  */
2241
- readonly config: _angular_core.InputSignal<Partial<ChatConfig> | undefined>;
2241
+ readonly config: _angular_core.InputSignal<{
2242
+ readonly behavior?: {
2243
+ readonly sendOnEnter?: boolean | undefined;
2244
+ readonly showTimestamps?: boolean | undefined;
2245
+ readonly timestampFormat?: {
2246
+ localeMatcher?: "best fit" | "lookup" | undefined | undefined;
2247
+ weekday?: "long" | "short" | "narrow" | undefined | undefined;
2248
+ era?: "long" | "short" | "narrow" | undefined | undefined;
2249
+ year?: "numeric" | "2-digit" | undefined | undefined;
2250
+ month?: "numeric" | "2-digit" | "long" | "short" | "narrow" | undefined | undefined;
2251
+ day?: "numeric" | "2-digit" | undefined | undefined;
2252
+ hour?: "numeric" | "2-digit" | undefined | undefined;
2253
+ minute?: "numeric" | "2-digit" | undefined | undefined;
2254
+ second?: "numeric" | "2-digit" | undefined | undefined;
2255
+ timeZoneName?: "short" | "long" | "shortOffset" | "longOffset" | "shortGeneric" | "longGeneric" | undefined | undefined;
2256
+ formatMatcher?: "best fit" | "basic" | undefined | undefined;
2257
+ hour12?: boolean | undefined | undefined;
2258
+ timeZone?: string | undefined | undefined;
2259
+ calendar?: string | undefined | undefined;
2260
+ dayPeriod?: "narrow" | "short" | "long" | undefined | undefined;
2261
+ numberingSystem?: string | undefined | undefined;
2262
+ dateStyle?: "full" | "long" | "medium" | "short" | undefined | undefined;
2263
+ timeStyle?: "full" | "long" | "medium" | "short" | undefined | undefined;
2264
+ hourCycle?: "h11" | "h12" | "h23" | "h24" | undefined | undefined;
2265
+ fractionalSecondDigits?: 1 | 2 | 3 | undefined | undefined;
2266
+ } | undefined;
2267
+ readonly autoScroll?: boolean | undefined;
2268
+ readonly groupMessages?: boolean | undefined;
2269
+ readonly groupTimeThreshold?: number | undefined;
2270
+ readonly sendCooldown?: number | undefined;
2271
+ readonly typingDebounce?: number | undefined;
2272
+ readonly scrollNearBottomThreshold?: number | undefined;
2273
+ readonly showSenderName?: boolean | undefined;
2274
+ readonly showAvatar?: boolean | undefined;
2275
+ readonly avatarPosition?: "top" | "bottom" | undefined;
2276
+ } | undefined;
2277
+ readonly validation?: {
2278
+ readonly minMessageLength?: number | undefined;
2279
+ readonly maxMessageLength?: number | undefined;
2280
+ readonly forbiddenPatterns?: readonly ({
2281
+ exec?: {} | undefined;
2282
+ test?: {} | undefined;
2283
+ readonly source?: string | undefined;
2284
+ readonly global?: boolean | undefined;
2285
+ readonly ignoreCase?: boolean | undefined;
2286
+ readonly multiline?: boolean | undefined;
2287
+ lastIndex?: number | undefined;
2288
+ compile?: {} | undefined;
2289
+ readonly flags?: string | undefined;
2290
+ readonly sticky?: boolean | undefined;
2291
+ readonly unicode?: boolean | undefined;
2292
+ readonly dotAll?: boolean | undefined;
2293
+ readonly hasIndices?: boolean | undefined;
2294
+ [Symbol.match]?: {} | undefined;
2295
+ [Symbol.replace]?: {} | undefined;
2296
+ [Symbol.search]?: {} | undefined;
2297
+ [Symbol.split]?: {} | undefined;
2298
+ [Symbol.matchAll]?: {} | undefined;
2299
+ } | undefined)[] | undefined;
2300
+ readonly sanitize?: boolean | undefined;
2301
+ readonly trimWhitespace?: boolean | undefined;
2302
+ readonly allowEmptyContent?: boolean | undefined;
2303
+ readonly maxWordLength?: number | undefined;
2304
+ readonly normalizeUnicode?: boolean | undefined;
2305
+ readonly stripInvisibleChars?: boolean | undefined;
2306
+ } | undefined;
2307
+ readonly markdown?: {
2308
+ readonly enabled?: boolean | undefined;
2309
+ readonly syntaxHighlighting?: boolean | undefined;
2310
+ readonly sanitizeLinks?: boolean | undefined;
2311
+ readonly externalLinksNewTab?: boolean | undefined;
2312
+ readonly allowedTags?: readonly (string | undefined)[] | undefined;
2313
+ readonly allowedAttributes?: {
2314
+ readonly [x: string]: readonly (string | undefined)[] | undefined;
2315
+ } | undefined;
2316
+ readonly breaks?: boolean | undefined;
2317
+ readonly linkify?: boolean | undefined;
2318
+ } | undefined;
2319
+ readonly attachments?: {
2320
+ readonly enabled?: boolean | undefined;
2321
+ readonly maxFileSize?: number | undefined;
2322
+ readonly maxFilesPerMessage?: number | undefined;
2323
+ readonly allowedMimeTypes?: readonly (string | undefined)[] | undefined;
2324
+ readonly blockedMimeTypes?: readonly (string | undefined)[] | undefined;
2325
+ readonly imageCompression?: boolean | undefined;
2326
+ readonly imageCompressionQuality?: number | undefined;
2327
+ readonly maxImageDimensions?: {
2328
+ readonly width?: number | undefined;
2329
+ readonly height?: number | undefined;
2330
+ } | undefined;
2331
+ readonly thumbnailSize?: {
2332
+ readonly width?: number | undefined;
2333
+ readonly height?: number | undefined;
2334
+ } | undefined;
2335
+ readonly dragAndDrop?: boolean | undefined;
2336
+ readonly pasteFromClipboard?: boolean | undefined;
2337
+ } | undefined;
2338
+ readonly virtualScroll?: {
2339
+ readonly enabled?: boolean | undefined;
2340
+ readonly threshold?: number | undefined;
2341
+ readonly defaultItemHeight?: number | undefined;
2342
+ readonly bufferSize?: number | undefined;
2343
+ readonly cacheItemHeights?: boolean | undefined;
2344
+ } | undefined;
2345
+ readonly errorRecovery?: {
2346
+ readonly autoRetry?: boolean | undefined;
2347
+ readonly maxRetries?: number | undefined;
2348
+ readonly retryDelay?: number | undefined;
2349
+ readonly exponentialBackoff?: boolean | undefined;
2350
+ readonly maxRetryDelay?: number | undefined;
2351
+ readonly offlineQueue?: boolean | undefined;
2352
+ readonly maxQueueSize?: number | undefined;
2353
+ } | undefined;
2354
+ readonly keyboard?: {
2355
+ readonly sendOnEnter?: boolean | undefined;
2356
+ readonly sendOnCtrlEnter?: boolean | undefined;
2357
+ readonly escToClear?: boolean | undefined;
2358
+ readonly escToCancelAction?: boolean | undefined;
2359
+ readonly arrowKeysForActions?: boolean | undefined;
2360
+ readonly upToEditLast?: boolean | undefined;
2361
+ readonly focusTrap?: boolean | undefined;
2362
+ } | undefined;
2363
+ readonly theme?: _cdevhub_ngx_chat.ChatTheme | undefined;
2364
+ readonly direction?: _cdevhub_ngx_chat.ChatDirection | undefined;
2365
+ } | undefined>;
2242
2366
  /**
2243
2367
  * Emitted when the user scrolls near the top to load more messages.
2244
2368
  * The parent should fetch older messages and prepend to the list.
@@ -2425,7 +2549,131 @@ declare class ChatMessageBubbleComponent {
2425
2549
  * Optional configuration override.
2426
2550
  * If not provided, uses global configuration.
2427
2551
  */
2428
- readonly config: _angular_core.InputSignal<Partial<ChatConfig> | undefined>;
2552
+ readonly config: _angular_core.InputSignal<{
2553
+ readonly behavior?: {
2554
+ readonly sendOnEnter?: boolean | undefined;
2555
+ readonly showTimestamps?: boolean | undefined;
2556
+ readonly timestampFormat?: {
2557
+ localeMatcher?: "best fit" | "lookup" | undefined | undefined;
2558
+ weekday?: "long" | "short" | "narrow" | undefined | undefined;
2559
+ era?: "long" | "short" | "narrow" | undefined | undefined;
2560
+ year?: "numeric" | "2-digit" | undefined | undefined;
2561
+ month?: "numeric" | "2-digit" | "long" | "short" | "narrow" | undefined | undefined;
2562
+ day?: "numeric" | "2-digit" | undefined | undefined;
2563
+ hour?: "numeric" | "2-digit" | undefined | undefined;
2564
+ minute?: "numeric" | "2-digit" | undefined | undefined;
2565
+ second?: "numeric" | "2-digit" | undefined | undefined;
2566
+ timeZoneName?: "short" | "long" | "shortOffset" | "longOffset" | "shortGeneric" | "longGeneric" | undefined | undefined;
2567
+ formatMatcher?: "best fit" | "basic" | undefined | undefined;
2568
+ hour12?: boolean | undefined | undefined;
2569
+ timeZone?: string | undefined | undefined;
2570
+ calendar?: string | undefined | undefined;
2571
+ dayPeriod?: "narrow" | "short" | "long" | undefined | undefined;
2572
+ numberingSystem?: string | undefined | undefined;
2573
+ dateStyle?: "full" | "long" | "medium" | "short" | undefined | undefined;
2574
+ timeStyle?: "full" | "long" | "medium" | "short" | undefined | undefined;
2575
+ hourCycle?: "h11" | "h12" | "h23" | "h24" | undefined | undefined;
2576
+ fractionalSecondDigits?: 1 | 2 | 3 | undefined | undefined;
2577
+ } | undefined;
2578
+ readonly autoScroll?: boolean | undefined;
2579
+ readonly groupMessages?: boolean | undefined;
2580
+ readonly groupTimeThreshold?: number | undefined;
2581
+ readonly sendCooldown?: number | undefined;
2582
+ readonly typingDebounce?: number | undefined;
2583
+ readonly scrollNearBottomThreshold?: number | undefined;
2584
+ readonly showSenderName?: boolean | undefined;
2585
+ readonly showAvatar?: boolean | undefined;
2586
+ readonly avatarPosition?: "top" | "bottom" | undefined;
2587
+ } | undefined;
2588
+ readonly validation?: {
2589
+ readonly minMessageLength?: number | undefined;
2590
+ readonly maxMessageLength?: number | undefined;
2591
+ readonly forbiddenPatterns?: readonly ({
2592
+ exec?: {} | undefined;
2593
+ test?: {} | undefined;
2594
+ readonly source?: string | undefined;
2595
+ readonly global?: boolean | undefined;
2596
+ readonly ignoreCase?: boolean | undefined;
2597
+ readonly multiline?: boolean | undefined;
2598
+ lastIndex?: number | undefined;
2599
+ compile?: {} | undefined;
2600
+ readonly flags?: string | undefined;
2601
+ readonly sticky?: boolean | undefined;
2602
+ readonly unicode?: boolean | undefined;
2603
+ readonly dotAll?: boolean | undefined;
2604
+ readonly hasIndices?: boolean | undefined;
2605
+ [Symbol.match]?: {} | undefined;
2606
+ [Symbol.replace]?: {} | undefined;
2607
+ [Symbol.search]?: {} | undefined;
2608
+ [Symbol.split]?: {} | undefined;
2609
+ [Symbol.matchAll]?: {} | undefined;
2610
+ } | undefined)[] | undefined;
2611
+ readonly sanitize?: boolean | undefined;
2612
+ readonly trimWhitespace?: boolean | undefined;
2613
+ readonly allowEmptyContent?: boolean | undefined;
2614
+ readonly maxWordLength?: number | undefined;
2615
+ readonly normalizeUnicode?: boolean | undefined;
2616
+ readonly stripInvisibleChars?: boolean | undefined;
2617
+ } | undefined;
2618
+ readonly markdown?: {
2619
+ readonly enabled?: boolean | undefined;
2620
+ readonly syntaxHighlighting?: boolean | undefined;
2621
+ readonly sanitizeLinks?: boolean | undefined;
2622
+ readonly externalLinksNewTab?: boolean | undefined;
2623
+ readonly allowedTags?: readonly (string | undefined)[] | undefined;
2624
+ readonly allowedAttributes?: {
2625
+ readonly [x: string]: readonly (string | undefined)[] | undefined;
2626
+ } | undefined;
2627
+ readonly breaks?: boolean | undefined;
2628
+ readonly linkify?: boolean | undefined;
2629
+ } | undefined;
2630
+ readonly attachments?: {
2631
+ readonly enabled?: boolean | undefined;
2632
+ readonly maxFileSize?: number | undefined;
2633
+ readonly maxFilesPerMessage?: number | undefined;
2634
+ readonly allowedMimeTypes?: readonly (string | undefined)[] | undefined;
2635
+ readonly blockedMimeTypes?: readonly (string | undefined)[] | undefined;
2636
+ readonly imageCompression?: boolean | undefined;
2637
+ readonly imageCompressionQuality?: number | undefined;
2638
+ readonly maxImageDimensions?: {
2639
+ readonly width?: number | undefined;
2640
+ readonly height?: number | undefined;
2641
+ } | undefined;
2642
+ readonly thumbnailSize?: {
2643
+ readonly width?: number | undefined;
2644
+ readonly height?: number | undefined;
2645
+ } | undefined;
2646
+ readonly dragAndDrop?: boolean | undefined;
2647
+ readonly pasteFromClipboard?: boolean | undefined;
2648
+ } | undefined;
2649
+ readonly virtualScroll?: {
2650
+ readonly enabled?: boolean | undefined;
2651
+ readonly threshold?: number | undefined;
2652
+ readonly defaultItemHeight?: number | undefined;
2653
+ readonly bufferSize?: number | undefined;
2654
+ readonly cacheItemHeights?: boolean | undefined;
2655
+ } | undefined;
2656
+ readonly errorRecovery?: {
2657
+ readonly autoRetry?: boolean | undefined;
2658
+ readonly maxRetries?: number | undefined;
2659
+ readonly retryDelay?: number | undefined;
2660
+ readonly exponentialBackoff?: boolean | undefined;
2661
+ readonly maxRetryDelay?: number | undefined;
2662
+ readonly offlineQueue?: boolean | undefined;
2663
+ readonly maxQueueSize?: number | undefined;
2664
+ } | undefined;
2665
+ readonly keyboard?: {
2666
+ readonly sendOnEnter?: boolean | undefined;
2667
+ readonly sendOnCtrlEnter?: boolean | undefined;
2668
+ readonly escToClear?: boolean | undefined;
2669
+ readonly escToCancelAction?: boolean | undefined;
2670
+ readonly arrowKeysForActions?: boolean | undefined;
2671
+ readonly upToEditLast?: boolean | undefined;
2672
+ readonly focusTrap?: boolean | undefined;
2673
+ } | undefined;
2674
+ readonly theme?: _cdevhub_ngx_chat.ChatTheme | undefined;
2675
+ readonly direction?: _cdevhub_ngx_chat.ChatDirection | undefined;
2676
+ } | undefined>;
2429
2677
  /**
2430
2678
  * Merged configuration from input and global config.
2431
2679
  */
@@ -2471,6 +2719,11 @@ declare class ChatMessageBubbleComponent {
2471
2719
  * Emits retry event through ChatEventService.
2472
2720
  */
2473
2721
  onRetry(): void;
2722
+ /**
2723
+ * Handles attachment click.
2724
+ * Forwards to ChatEventService for bubbling up.
2725
+ */
2726
+ onAttachmentClick(event: AttachmentClickEvent): void;
2474
2727
  /**
2475
2728
  * Gets status icon configuration for a message status.
2476
2729
  */