@djangocfg/ui-tools 2.1.335 → 2.1.336

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.
Files changed (193) hide show
  1. package/README.md +68 -2
  2. package/dist/ChatRoot-IIYQEWUU.mjs +5 -0
  3. package/dist/ChatRoot-IIYQEWUU.mjs.map +1 -0
  4. package/dist/ChatRoot-PNNGQCYF.css +7 -0
  5. package/dist/ChatRoot-PNNGQCYF.css.map +1 -0
  6. package/dist/ChatRoot-UUKTYM4N.cjs +14 -0
  7. package/dist/ChatRoot-UUKTYM4N.cjs.map +1 -0
  8. package/dist/{CronScheduler.client-3O3VU4CI.mjs → CronScheduler.client-DLMXCPAJ.mjs} +4 -4
  9. package/dist/{CronScheduler.client-3O3VU4CI.mjs.map → CronScheduler.client-DLMXCPAJ.mjs.map} +1 -1
  10. package/dist/{CronScheduler.client-A4GO6YBY.cjs → CronScheduler.client-WEJF4PWQ.cjs} +14 -14
  11. package/dist/{CronScheduler.client-A4GO6YBY.cjs.map → CronScheduler.client-WEJF4PWQ.cjs.map} +1 -1
  12. package/dist/{DocsLayout-XLDB6CJ2.cjs → DocsLayout-N5ZJZPBY.cjs} +200 -199
  13. package/dist/DocsLayout-N5ZJZPBY.cjs.map +1 -0
  14. package/dist/{DocsLayout-CTJINVBM.mjs → DocsLayout-VFPPNKSQ.mjs} +7 -6
  15. package/dist/DocsLayout-VFPPNKSQ.mjs.map +1 -0
  16. package/dist/JsonSchemaForm-DD7CLRIG.cjs +13 -0
  17. package/dist/{JsonSchemaForm-6WMS4CIY.cjs.map → JsonSchemaForm-DD7CLRIG.cjs.map} +1 -1
  18. package/dist/JsonSchemaForm-XKUIVELK.mjs +4 -0
  19. package/dist/{JsonSchemaForm-KX4JT3M4.mjs.map → JsonSchemaForm-XKUIVELK.mjs.map} +1 -1
  20. package/dist/JsonTree-55625VVH.mjs +5 -0
  21. package/dist/{JsonTree-F27RMYSI.cjs.map → JsonTree-55625VVH.mjs.map} +1 -1
  22. package/dist/JsonTree-DCM5QGWF.cjs +11 -0
  23. package/dist/{JsonTree-QTJYSHCV.mjs.map → JsonTree-DCM5QGWF.cjs.map} +1 -1
  24. package/dist/{LottiePlayer.client-6WVWDO75.cjs → LottiePlayer.client-2S7ISJ2S.cjs} +6 -6
  25. package/dist/{LottiePlayer.client-6WVWDO75.cjs.map → LottiePlayer.client-2S7ISJ2S.cjs.map} +1 -1
  26. package/dist/{LottiePlayer.client-B4I6WNZM.mjs → LottiePlayer.client-5LDSSJWS.mjs} +4 -4
  27. package/dist/{LottiePlayer.client-B4I6WNZM.mjs.map → LottiePlayer.client-5LDSSJWS.mjs.map} +1 -1
  28. package/dist/{MapContainer-RYG4HPH4.cjs → MapContainer-76YL2JXL.cjs} +8 -8
  29. package/dist/{MapContainer-RYG4HPH4.cjs.map → MapContainer-76YL2JXL.cjs.map} +1 -1
  30. package/dist/{MapContainer-GXQLP5WY.mjs → MapContainer-7HXBI3OH.mjs} +3 -3
  31. package/dist/{MapContainer-GXQLP5WY.mjs.map → MapContainer-7HXBI3OH.mjs.map} +1 -1
  32. package/dist/{Mermaid.client-SXRRI2YW.mjs → Mermaid.client-NL4SVR7F.mjs} +4 -4
  33. package/dist/{Mermaid.client-SXRRI2YW.mjs.map → Mermaid.client-NL4SVR7F.mjs.map} +1 -1
  34. package/dist/{Mermaid.client-W76R5AKJ.cjs → Mermaid.client-NNTI6DFX.cjs} +26 -26
  35. package/dist/{Mermaid.client-W76R5AKJ.cjs.map → Mermaid.client-NNTI6DFX.cjs.map} +1 -1
  36. package/dist/Player-BRV7XTWR.mjs +4 -0
  37. package/dist/{Player-M3GC3VPE.mjs.map → Player-BRV7XTWR.mjs.map} +1 -1
  38. package/dist/Player-PM7F7DD7.cjs +13 -0
  39. package/dist/{Player-ZL2X5LGG.cjs.map → Player-PM7F7DD7.cjs.map} +1 -1
  40. package/dist/{PrettyCode.client-RPDIE5CH.cjs → PrettyCode.client-KOHDVPPN.cjs} +13 -13
  41. package/dist/{PrettyCode.client-RPDIE5CH.cjs.map → PrettyCode.client-KOHDVPPN.cjs.map} +1 -1
  42. package/dist/{PrettyCode.client-SPMTQEG4.mjs → PrettyCode.client-ZGYGKE7G.mjs} +4 -4
  43. package/dist/{PrettyCode.client-SPMTQEG4.mjs.map → PrettyCode.client-ZGYGKE7G.mjs.map} +1 -1
  44. package/dist/TreeRoot-N72OYKXU.cjs +19 -0
  45. package/dist/{TreeRoot-A3J65L6F.mjs.map → TreeRoot-N72OYKXU.cjs.map} +1 -1
  46. package/dist/TreeRoot-VGAIXCUA.mjs +4 -0
  47. package/dist/{TreeRoot-DSK5JILT.cjs.map → TreeRoot-VGAIXCUA.mjs.map} +1 -1
  48. package/dist/chunk-2ZLKZ5VR.mjs +631 -0
  49. package/dist/chunk-2ZLKZ5VR.mjs.map +1 -0
  50. package/dist/{chunk-LFWQ36LJ.mjs → chunk-5G5YBFS6.mjs} +4 -4
  51. package/dist/{chunk-LFWQ36LJ.mjs.map → chunk-5G5YBFS6.mjs.map} +1 -1
  52. package/dist/{chunk-IHAY6FO6.cjs → chunk-5I5QNGUG.cjs} +17 -17
  53. package/dist/{chunk-IHAY6FO6.cjs.map → chunk-5I5QNGUG.cjs.map} +1 -1
  54. package/dist/{chunk-F2CMIIOH.cjs → chunk-76NNDZH6.cjs} +42 -42
  55. package/dist/{chunk-F2CMIIOH.cjs.map → chunk-76NNDZH6.cjs.map} +1 -1
  56. package/dist/chunk-B5AWZOHJ.cjs +649 -0
  57. package/dist/chunk-B5AWZOHJ.cjs.map +1 -0
  58. package/dist/{chunk-KR6B3LVY.mjs → chunk-B6IR5KSC.mjs} +3 -3
  59. package/dist/{chunk-KR6B3LVY.mjs.map → chunk-B6IR5KSC.mjs.map} +1 -1
  60. package/dist/{chunk-5LBDYFWH.mjs → chunk-C6GXVH5J.mjs} +3 -3
  61. package/dist/{chunk-5LBDYFWH.mjs.map → chunk-C6GXVH5J.mjs.map} +1 -1
  62. package/dist/{chunk-NRKD4F5X.cjs → chunk-FEN5S772.cjs} +36 -36
  63. package/dist/{chunk-NRKD4F5X.cjs.map → chunk-FEN5S772.cjs.map} +1 -1
  64. package/dist/{chunk-2SMCH62O.cjs → chunk-FP2RLYQZ.cjs} +11 -11
  65. package/dist/{chunk-2SMCH62O.cjs.map → chunk-FP2RLYQZ.cjs.map} +1 -1
  66. package/dist/{chunk-MOME6KYD.mjs → chunk-G5IEC7SR.mjs} +3 -3
  67. package/dist/{chunk-MOME6KYD.mjs.map → chunk-G5IEC7SR.mjs.map} +1 -1
  68. package/dist/{chunk-SE5IERVH.mjs → chunk-GYIO7W7M.mjs} +3 -3
  69. package/dist/{chunk-SE5IERVH.mjs.map → chunk-GYIO7W7M.mjs.map} +1 -1
  70. package/dist/{chunk-3Z3A7FHA.cjs → chunk-IEEAENLX.cjs} +48 -48
  71. package/dist/{chunk-3Z3A7FHA.cjs.map → chunk-IEEAENLX.cjs.map} +1 -1
  72. package/dist/{chunk-DFTVB66S.cjs → chunk-KNDLV4PI.cjs} +85 -85
  73. package/dist/{chunk-DFTVB66S.cjs.map → chunk-KNDLV4PI.cjs.map} +1 -1
  74. package/dist/{chunk-SSUOENAZ.mjs → chunk-KNEQRUBA.mjs} +3 -3
  75. package/dist/{chunk-SSUOENAZ.mjs.map → chunk-KNEQRUBA.mjs.map} +1 -1
  76. package/dist/chunk-KRETIZU6.mjs +2218 -0
  77. package/dist/chunk-KRETIZU6.mjs.map +1 -0
  78. package/dist/{chunk-CGILA3WO.mjs → chunk-N2XQF2OL.mjs} +5 -3
  79. package/dist/{chunk-CGILA3WO.mjs.map → chunk-N2XQF2OL.mjs.map} +1 -1
  80. package/dist/{chunk-EUADAUBQ.mjs → chunk-N4MZYNR4.mjs} +4 -4
  81. package/dist/{chunk-EUADAUBQ.mjs.map → chunk-N4MZYNR4.mjs.map} +1 -1
  82. package/dist/chunk-NRXYYO5V.cjs +2257 -0
  83. package/dist/chunk-NRXYYO5V.cjs.map +1 -0
  84. package/dist/{chunk-GGKGH5PM.mjs → chunk-OBRSGM64.mjs} +4 -4
  85. package/dist/{chunk-GGKGH5PM.mjs.map → chunk-OBRSGM64.mjs.map} +1 -1
  86. package/dist/{chunk-6JTB2X72.mjs → chunk-ODO4GMW7.mjs} +3 -3
  87. package/dist/{chunk-6JTB2X72.mjs.map → chunk-ODO4GMW7.mjs.map} +1 -1
  88. package/dist/{chunk-WGEGR3DF.cjs → chunk-OLISEQHS.cjs} +5 -2
  89. package/dist/{chunk-WGEGR3DF.cjs.map → chunk-OLISEQHS.cjs.map} +1 -1
  90. package/dist/{chunk-PZKAH7WQ.mjs → chunk-PVAX67JG.mjs} +3 -3
  91. package/dist/{chunk-PZKAH7WQ.mjs.map → chunk-PVAX67JG.mjs.map} +1 -1
  92. package/dist/{chunk-PRPG2T2E.cjs → chunk-QJ6GTUCO.cjs} +6 -6
  93. package/dist/{chunk-PRPG2T2E.cjs.map → chunk-QJ6GTUCO.cjs.map} +1 -1
  94. package/dist/chunk-QW4RBGHN.cjs +961 -0
  95. package/dist/chunk-QW4RBGHN.cjs.map +1 -0
  96. package/dist/{chunk-33AMWFBZ.cjs → chunk-SGP7V2UW.cjs} +15 -15
  97. package/dist/{chunk-33AMWFBZ.cjs.map → chunk-SGP7V2UW.cjs.map} +1 -1
  98. package/dist/{chunk-FX2QFYWF.mjs → chunk-VWQ5WOIL.mjs} +3 -3
  99. package/dist/{chunk-FX2QFYWF.mjs.map → chunk-VWQ5WOIL.mjs.map} +1 -1
  100. package/dist/{chunk-ZLQHUZDU.cjs → chunk-YDPDTOSP.cjs} +139 -139
  101. package/dist/{chunk-ZLQHUZDU.cjs.map → chunk-YDPDTOSP.cjs.map} +1 -1
  102. package/dist/{chunk-77HQWEQ6.cjs → chunk-YW5IVWHQ.cjs} +33 -33
  103. package/dist/{chunk-77HQWEQ6.cjs.map → chunk-YW5IVWHQ.cjs.map} +1 -1
  104. package/dist/{chunk-YXBOAGIM.cjs → chunk-YXZ6GU7H.cjs} +7 -7
  105. package/dist/{chunk-YXBOAGIM.cjs.map → chunk-YXZ6GU7H.cjs.map} +1 -1
  106. package/dist/{chunk-62Y65TGK.mjs → chunk-ZUFTH5IR.mjs} +8 -631
  107. package/dist/chunk-ZUFTH5IR.mjs.map +1 -0
  108. package/dist/components-EHOGXATG.cjs +22 -0
  109. package/dist/{components-5UXYNAKR.cjs.map → components-EHOGXATG.cjs.map} +1 -1
  110. package/dist/components-MQ6DR7TX.cjs +26 -0
  111. package/dist/{components-CFXOEVPN.mjs.map → components-MQ6DR7TX.cjs.map} +1 -1
  112. package/dist/components-XRX7QGLB.mjs +5 -0
  113. package/dist/{components-WYEZL5TE.cjs.map → components-XRX7QGLB.mjs.map} +1 -1
  114. package/dist/components-YATKRWLH.mjs +5 -0
  115. package/dist/{components-ZAGG2PBO.mjs.map → components-YATKRWLH.mjs.map} +1 -1
  116. package/dist/file-icon/index.cjs +6 -6
  117. package/dist/file-icon/index.mjs +1 -1
  118. package/dist/index.cjs +735 -215
  119. package/dist/index.cjs.map +1 -1
  120. package/dist/index.d.cts +972 -39
  121. package/dist/index.d.ts +972 -39
  122. package/dist/index.mjs +387 -31
  123. package/dist/index.mjs.map +1 -1
  124. package/dist/tree/index.cjs +38 -38
  125. package/dist/tree/index.d.cts +2 -2
  126. package/dist/tree/index.d.ts +2 -2
  127. package/dist/tree/index.mjs +3 -3
  128. package/package.json +6 -6
  129. package/src/index.ts +5 -0
  130. package/src/stories/index.ts +3 -1
  131. package/src/tools/Chat/Chat.story.tsx +1006 -0
  132. package/src/tools/Chat/README.md +528 -0
  133. package/src/tools/Chat/components/Attachments.tsx +192 -0
  134. package/src/tools/Chat/components/ChatRoot.tsx +201 -0
  135. package/src/tools/Chat/components/Composer.tsx +134 -0
  136. package/src/tools/Chat/components/EmptyState.tsx +47 -0
  137. package/src/tools/Chat/components/ErrorBanner.tsx +47 -0
  138. package/src/tools/Chat/components/JumpToLatest.tsx +30 -0
  139. package/src/tools/Chat/components/MessageActions.tsx +72 -0
  140. package/src/tools/Chat/components/MessageBubble.tsx +228 -0
  141. package/src/tools/Chat/components/MessageList.tsx +82 -0
  142. package/src/tools/Chat/components/Sources.tsx +55 -0
  143. package/src/tools/Chat/components/StreamingIndicator.tsx +29 -0
  144. package/src/tools/Chat/components/ToolCalls.tsx +172 -0
  145. package/src/tools/Chat/components/index.ts +24 -0
  146. package/src/tools/Chat/config.ts +55 -0
  147. package/src/tools/Chat/context/ChatProvider.tsx +122 -0
  148. package/src/tools/Chat/context/index.ts +9 -0
  149. package/src/tools/Chat/core/audio/audioBus.ts +172 -0
  150. package/src/tools/Chat/core/audio/index.ts +8 -0
  151. package/src/tools/Chat/core/audio/preferences.ts +68 -0
  152. package/src/tools/Chat/core/audio/types.ts +49 -0
  153. package/src/tools/Chat/core/ids.ts +16 -0
  154. package/src/tools/Chat/core/index.ts +5 -0
  155. package/src/tools/Chat/core/markdown.ts +56 -0
  156. package/src/tools/Chat/core/payload-dispatch.ts +54 -0
  157. package/src/tools/Chat/core/persona.ts +35 -0
  158. package/src/tools/Chat/core/reducer.ts +335 -0
  159. package/src/tools/Chat/core/transport/http.ts +167 -0
  160. package/src/tools/Chat/core/transport/index.ts +13 -0
  161. package/src/tools/Chat/core/transport/mock.ts +134 -0
  162. package/src/tools/Chat/core/transport/sse.ts +116 -0
  163. package/src/tools/Chat/core/transport/types.ts +24 -0
  164. package/src/tools/Chat/hooks/index.ts +26 -0
  165. package/src/tools/Chat/hooks/useChat.ts +440 -0
  166. package/src/tools/Chat/hooks/useChatAudio.ts +191 -0
  167. package/src/tools/Chat/hooks/useChatComposer.ts +227 -0
  168. package/src/tools/Chat/hooks/useChatHistory.ts +59 -0
  169. package/src/tools/Chat/hooks/useChatLayout.ts +111 -0
  170. package/src/tools/Chat/hooks/useChatLightbox.ts +34 -0
  171. package/src/tools/Chat/hooks/useChatScroll.ts +132 -0
  172. package/src/tools/Chat/index.ts +158 -0
  173. package/src/tools/Chat/lazy.tsx +14 -0
  174. package/src/tools/Chat/types.ts +237 -0
  175. package/src/tools/Chat/utils/collectImageAttachments.ts +13 -0
  176. package/src/tools/Map/README.md +384 -0
  177. package/dist/DocsLayout-CTJINVBM.mjs.map +0 -1
  178. package/dist/DocsLayout-XLDB6CJ2.cjs.map +0 -1
  179. package/dist/JsonSchemaForm-6WMS4CIY.cjs +0 -13
  180. package/dist/JsonSchemaForm-KX4JT3M4.mjs +0 -4
  181. package/dist/JsonTree-F27RMYSI.cjs +0 -11
  182. package/dist/JsonTree-QTJYSHCV.mjs +0 -5
  183. package/dist/Player-M3GC3VPE.mjs +0 -4
  184. package/dist/Player-ZL2X5LGG.cjs +0 -13
  185. package/dist/TreeRoot-A3J65L6F.mjs +0 -4
  186. package/dist/TreeRoot-DSK5JILT.cjs +0 -19
  187. package/dist/chunk-62Y65TGK.mjs.map +0 -1
  188. package/dist/chunk-TKSFZHCG.cjs +0 -1597
  189. package/dist/chunk-TKSFZHCG.cjs.map +0 -1
  190. package/dist/components-5UXYNAKR.cjs +0 -22
  191. package/dist/components-CFXOEVPN.mjs +0 -5
  192. package/dist/components-WYEZL5TE.cjs +0 -26
  193. package/dist/components-ZAGG2PBO.mjs +0 -5
@@ -2,151 +2,151 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var chunkYXBOAGIM_cjs = require('../chunk-YXBOAGIM.cjs');
6
- var chunk3Z3A7FHA_cjs = require('../chunk-3Z3A7FHA.cjs');
7
- require('../chunk-WGEGR3DF.cjs');
5
+ var chunkYXZ6GU7H_cjs = require('../chunk-YXZ6GU7H.cjs');
6
+ var chunkIEEAENLX_cjs = require('../chunk-IEEAENLX.cjs');
7
+ require('../chunk-OLISEQHS.cjs');
8
8
 
9
9
 
10
10
 
11
11
  Object.defineProperty(exports, "TreeError", {
12
12
  enumerable: true,
13
- get: function () { return chunkYXBOAGIM_cjs.TreeError; }
13
+ get: function () { return chunkYXZ6GU7H_cjs.TreeError; }
14
14
  });
15
15
  Object.defineProperty(exports, "TreeSkeleton", {
16
16
  enumerable: true,
17
- get: function () { return chunkYXBOAGIM_cjs.TreeSkeleton; }
17
+ get: function () { return chunkYXZ6GU7H_cjs.TreeSkeleton; }
18
18
  });
19
19
  Object.defineProperty(exports, "createDemoTree", {
20
20
  enumerable: true,
21
- get: function () { return chunkYXBOAGIM_cjs.createDemoTree; }
21
+ get: function () { return chunkYXZ6GU7H_cjs.createDemoTree; }
22
22
  });
23
23
  Object.defineProperty(exports, "DEFAULT_TREE_APPEARANCE", {
24
24
  enumerable: true,
25
- get: function () { return chunk3Z3A7FHA_cjs.DEFAULT_TREE_APPEARANCE; }
25
+ get: function () { return chunkIEEAENLX_cjs.DEFAULT_TREE_APPEARANCE; }
26
26
  });
27
27
  Object.defineProperty(exports, "DEFAULT_TREE_LABELS", {
28
28
  enumerable: true,
29
- get: function () { return chunk3Z3A7FHA_cjs.DEFAULT_TREE_LABELS; }
29
+ get: function () { return chunkIEEAENLX_cjs.DEFAULT_TREE_LABELS; }
30
30
  });
31
31
  Object.defineProperty(exports, "Tree", {
32
32
  enumerable: true,
33
- get: function () { return chunk3Z3A7FHA_cjs.TreeRoot; }
33
+ get: function () { return chunkIEEAENLX_cjs.TreeRoot; }
34
34
  });
35
35
  Object.defineProperty(exports, "TreeChevron", {
36
36
  enumerable: true,
37
- get: function () { return chunk3Z3A7FHA_cjs.TreeChevron; }
37
+ get: function () { return chunkIEEAENLX_cjs.TreeChevron; }
38
38
  });
39
39
  Object.defineProperty(exports, "TreeContent", {
40
40
  enumerable: true,
41
- get: function () { return chunk3Z3A7FHA_cjs.TreeContent; }
41
+ get: function () { return chunkIEEAENLX_cjs.TreeContent; }
42
42
  });
43
43
  Object.defineProperty(exports, "TreeEmpty", {
44
44
  enumerable: true,
45
- get: function () { return chunk3Z3A7FHA_cjs.TreeEmpty; }
45
+ get: function () { return chunkIEEAENLX_cjs.TreeEmpty; }
46
46
  });
47
47
  Object.defineProperty(exports, "TreeIcon", {
48
48
  enumerable: true,
49
- get: function () { return chunk3Z3A7FHA_cjs.TreeIcon; }
49
+ get: function () { return chunkIEEAENLX_cjs.TreeIcon; }
50
50
  });
51
51
  Object.defineProperty(exports, "TreeIndentGuides", {
52
52
  enumerable: true,
53
- get: function () { return chunk3Z3A7FHA_cjs.TreeIndentGuides; }
53
+ get: function () { return chunkIEEAENLX_cjs.TreeIndentGuides; }
54
54
  });
55
55
  Object.defineProperty(exports, "TreeLabel", {
56
56
  enumerable: true,
57
- get: function () { return chunk3Z3A7FHA_cjs.TreeLabel; }
57
+ get: function () { return chunkIEEAENLX_cjs.TreeLabel; }
58
58
  });
59
59
  Object.defineProperty(exports, "TreeProvider", {
60
60
  enumerable: true,
61
- get: function () { return chunk3Z3A7FHA_cjs.TreeProvider; }
61
+ get: function () { return chunkIEEAENLX_cjs.TreeProvider; }
62
62
  });
63
63
  Object.defineProperty(exports, "TreeRoot", {
64
64
  enumerable: true,
65
- get: function () { return chunk3Z3A7FHA_cjs.TreeRoot; }
65
+ get: function () { return chunkIEEAENLX_cjs.TreeRoot; }
66
66
  });
67
67
  Object.defineProperty(exports, "TreeRow", {
68
68
  enumerable: true,
69
- get: function () { return chunk3Z3A7FHA_cjs.TreeRow; }
69
+ get: function () { return chunkIEEAENLX_cjs.TreeRow; }
70
70
  });
71
71
  Object.defineProperty(exports, "TreeSearchInput", {
72
72
  enumerable: true,
73
- get: function () { return chunk3Z3A7FHA_cjs.TreeSearchInput; }
73
+ get: function () { return chunkIEEAENLX_cjs.TreeSearchInput; }
74
74
  });
75
75
  Object.defineProperty(exports, "appearanceToStyle", {
76
76
  enumerable: true,
77
- get: function () { return chunk3Z3A7FHA_cjs.appearanceToStyle; }
77
+ get: function () { return chunkIEEAENLX_cjs.appearanceToStyle; }
78
78
  });
79
79
  Object.defineProperty(exports, "clearTreeState", {
80
80
  enumerable: true,
81
- get: function () { return chunk3Z3A7FHA_cjs.clearTreeState; }
81
+ get: function () { return chunkIEEAENLX_cjs.clearTreeState; }
82
82
  });
83
83
  Object.defineProperty(exports, "createChildCache", {
84
84
  enumerable: true,
85
- get: function () { return chunk3Z3A7FHA_cjs.createChildCache; }
85
+ get: function () { return chunkIEEAENLX_cjs.createChildCache; }
86
86
  });
87
87
  Object.defineProperty(exports, "default", {
88
88
  enumerable: true,
89
- get: function () { return chunk3Z3A7FHA_cjs.TreeRoot_default; }
89
+ get: function () { return chunkIEEAENLX_cjs.TreeRoot_default; }
90
90
  });
91
91
  Object.defineProperty(exports, "flattenTree", {
92
92
  enumerable: true,
93
- get: function () { return chunk3Z3A7FHA_cjs.flattenTree; }
93
+ get: function () { return chunkIEEAENLX_cjs.flattenTree; }
94
94
  });
95
95
  Object.defineProperty(exports, "loadTreeState", {
96
96
  enumerable: true,
97
- get: function () { return chunk3Z3A7FHA_cjs.loadTreeState; }
97
+ get: function () { return chunkIEEAENLX_cjs.loadTreeState; }
98
98
  });
99
99
  Object.defineProperty(exports, "resolveAppearance", {
100
100
  enumerable: true,
101
- get: function () { return chunk3Z3A7FHA_cjs.resolveAppearance; }
101
+ get: function () { return chunkIEEAENLX_cjs.resolveAppearance; }
102
102
  });
103
103
  Object.defineProperty(exports, "resolveChildren", {
104
104
  enumerable: true,
105
- get: function () { return chunk3Z3A7FHA_cjs.resolveChildren; }
105
+ get: function () { return chunkIEEAENLX_cjs.resolveChildren; }
106
106
  });
107
107
  Object.defineProperty(exports, "saveTreeState", {
108
108
  enumerable: true,
109
- get: function () { return chunk3Z3A7FHA_cjs.saveTreeState; }
109
+ get: function () { return chunkIEEAENLX_cjs.saveTreeState; }
110
110
  });
111
111
  Object.defineProperty(exports, "useTreeActions", {
112
112
  enumerable: true,
113
- get: function () { return chunk3Z3A7FHA_cjs.useTreeActions; }
113
+ get: function () { return chunkIEEAENLX_cjs.useTreeActions; }
114
114
  });
115
115
  Object.defineProperty(exports, "useTreeContext", {
116
116
  enumerable: true,
117
- get: function () { return chunk3Z3A7FHA_cjs.useTreeContext; }
117
+ get: function () { return chunkIEEAENLX_cjs.useTreeContext; }
118
118
  });
119
119
  Object.defineProperty(exports, "useTreeExpansion", {
120
120
  enumerable: true,
121
- get: function () { return chunk3Z3A7FHA_cjs.useTreeExpansion; }
121
+ get: function () { return chunkIEEAENLX_cjs.useTreeExpansion; }
122
122
  });
123
123
  Object.defineProperty(exports, "useTreeFocus", {
124
124
  enumerable: true,
125
- get: function () { return chunk3Z3A7FHA_cjs.useTreeFocus; }
125
+ get: function () { return chunkIEEAENLX_cjs.useTreeFocus; }
126
126
  });
127
127
  Object.defineProperty(exports, "useTreeKeyboard", {
128
128
  enumerable: true,
129
- get: function () { return chunk3Z3A7FHA_cjs.useTreeKeyboard; }
129
+ get: function () { return chunkIEEAENLX_cjs.useTreeKeyboard; }
130
130
  });
131
131
  Object.defineProperty(exports, "useTreeLabels", {
132
132
  enumerable: true,
133
- get: function () { return chunk3Z3A7FHA_cjs.useTreeLabels; }
133
+ get: function () { return chunkIEEAENLX_cjs.useTreeLabels; }
134
134
  });
135
135
  Object.defineProperty(exports, "useTreeRows", {
136
136
  enumerable: true,
137
- get: function () { return chunk3Z3A7FHA_cjs.useTreeRows; }
137
+ get: function () { return chunkIEEAENLX_cjs.useTreeRows; }
138
138
  });
139
139
  Object.defineProperty(exports, "useTreeSearch", {
140
140
  enumerable: true,
141
- get: function () { return chunk3Z3A7FHA_cjs.useTreeSearch; }
141
+ get: function () { return chunkIEEAENLX_cjs.useTreeSearch; }
142
142
  });
143
143
  Object.defineProperty(exports, "useTreeSelection", {
144
144
  enumerable: true,
145
- get: function () { return chunk3Z3A7FHA_cjs.useTreeSelection; }
145
+ get: function () { return chunkIEEAENLX_cjs.useTreeSelection; }
146
146
  });
147
147
  Object.defineProperty(exports, "useTreeTypeAhead", {
148
148
  enumerable: true,
149
- get: function () { return chunk3Z3A7FHA_cjs.useTreeTypeAhead; }
149
+ get: function () { return chunkIEEAENLX_cjs.useTreeTypeAhead; }
150
150
  });
151
151
  //# sourceMappingURL=index.cjs.map
152
152
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,7 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { b as TreeRootProps, f as TreeItemId, T as TreeNode, F as FlatRow, o as TreeActivateOptions, g as TreeLabels, R as ResolvedAppearance, h as TreeSelectionMode, p as TreeActivationMode, a as TreeRowSlot, e as TreeContextMenuSlot } from '../types-CevSbyfD.cjs';
3
3
  export { c as DEFAULT_TREE_APPEARANCE, D as DEFAULT_TREE_LABELS, m as TreeAccentIntensity, k as TreeAppearance, l as TreeDensity, j as TreeLoadChildren, n as TreeRadius, i as TreeRowRenderProps, d as appearanceToStyle, r as resolveAppearance } from '../types-CevSbyfD.cjs';
4
- import * as React$1 from 'react';
4
+ import * as react from 'react';
5
5
 
6
6
  /**
7
7
  * High-level entry point. Wraps Provider + (optional) search bar + content.
@@ -71,7 +71,7 @@ interface TreeContextValue<T> {
71
71
  }
72
72
  declare function useTreeContext<T>(): TreeContextValue<T>;
73
73
  interface TreeProviderProps<T> extends Pick<TreeRootProps<T>, 'data' | 'getItemName' | 'loadChildren' | 'selectionMode' | 'activationMode' | 'initialExpandedIds' | 'initialSelectedIds' | 'indent' | 'appearance' | 'onSelectionChange' | 'onExpansionChange' | 'onActivate' | 'filterNode' | 'enableSearch' | 'showIndentGuides' | 'renderIcon' | 'renderLabel' | 'renderActions' | 'renderContextMenu' | 'labels' | 'persistKey' | 'persistSelection'> {
74
- children: React$1.ReactNode;
74
+ children: react.ReactNode;
75
75
  }
76
76
  declare function TreeProvider<T>(props: TreeProviderProps<T>): react_jsx_runtime.JSX.Element;
77
77
 
@@ -1,7 +1,7 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import { b as TreeRootProps, f as TreeItemId, T as TreeNode, F as FlatRow, o as TreeActivateOptions, g as TreeLabels, R as ResolvedAppearance, h as TreeSelectionMode, p as TreeActivationMode, a as TreeRowSlot, e as TreeContextMenuSlot } from '../types-CevSbyfD.js';
3
3
  export { c as DEFAULT_TREE_APPEARANCE, D as DEFAULT_TREE_LABELS, m as TreeAccentIntensity, k as TreeAppearance, l as TreeDensity, j as TreeLoadChildren, n as TreeRadius, i as TreeRowRenderProps, d as appearanceToStyle, r as resolveAppearance } from '../types-CevSbyfD.js';
4
- import * as React$1 from 'react';
4
+ import * as react from 'react';
5
5
 
6
6
  /**
7
7
  * High-level entry point. Wraps Provider + (optional) search bar + content.
@@ -71,7 +71,7 @@ interface TreeContextValue<T> {
71
71
  }
72
72
  declare function useTreeContext<T>(): TreeContextValue<T>;
73
73
  interface TreeProviderProps<T> extends Pick<TreeRootProps<T>, 'data' | 'getItemName' | 'loadChildren' | 'selectionMode' | 'activationMode' | 'initialExpandedIds' | 'initialSelectedIds' | 'indent' | 'appearance' | 'onSelectionChange' | 'onExpansionChange' | 'onActivate' | 'filterNode' | 'enableSearch' | 'showIndentGuides' | 'renderIcon' | 'renderLabel' | 'renderActions' | 'renderContextMenu' | 'labels' | 'persistKey' | 'persistSelection'> {
74
- children: React$1.ReactNode;
74
+ children: react.ReactNode;
75
75
  }
76
76
  declare function TreeProvider<T>(props: TreeProviderProps<T>): react_jsx_runtime.JSX.Element;
77
77
 
@@ -1,5 +1,5 @@
1
- export { TreeError, TreeSkeleton, createDemoTree } from '../chunk-KR6B3LVY.mjs';
2
- export { DEFAULT_TREE_APPEARANCE, DEFAULT_TREE_LABELS, TreeRoot as Tree, TreeChevron, TreeContent, TreeEmpty, TreeIcon, TreeIndentGuides, TreeLabel, TreeProvider, TreeRoot, TreeRow, TreeSearchInput, appearanceToStyle, clearTreeState, createChildCache, TreeRoot_default as default, flattenTree, loadTreeState, resolveAppearance, resolveChildren, saveTreeState, useTreeActions, useTreeContext, useTreeExpansion, useTreeFocus, useTreeKeyboard, useTreeLabels, useTreeRows, useTreeSearch, useTreeSelection, useTreeTypeAhead } from '../chunk-MOME6KYD.mjs';
3
- import '../chunk-CGILA3WO.mjs';
1
+ export { TreeError, TreeSkeleton, createDemoTree } from '../chunk-B6IR5KSC.mjs';
2
+ export { DEFAULT_TREE_APPEARANCE, DEFAULT_TREE_LABELS, TreeRoot as Tree, TreeChevron, TreeContent, TreeEmpty, TreeIcon, TreeIndentGuides, TreeLabel, TreeProvider, TreeRoot, TreeRow, TreeSearchInput, appearanceToStyle, clearTreeState, createChildCache, TreeRoot_default as default, flattenTree, loadTreeState, resolveAppearance, resolveChildren, saveTreeState, useTreeActions, useTreeContext, useTreeExpansion, useTreeFocus, useTreeKeyboard, useTreeLabels, useTreeRows, useTreeSearch, useTreeSelection, useTreeTypeAhead } from '../chunk-G5IEC7SR.mjs';
3
+ import '../chunk-N2XQF2OL.mjs';
4
4
  //# sourceMappingURL=index.mjs.map
5
5
  //# sourceMappingURL=index.mjs.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@djangocfg/ui-tools",
3
- "version": "2.1.335",
3
+ "version": "2.1.336",
4
4
  "description": "Heavy React tools with lazy loading - for Electron, Vite, CRA, Next.js apps",
5
5
  "keywords": [
6
6
  "ui-tools",
@@ -101,8 +101,8 @@
101
101
  "check": "tsc --noEmit"
102
102
  },
103
103
  "peerDependencies": {
104
- "@djangocfg/i18n": "^2.1.335",
105
- "@djangocfg/ui-core": "^2.1.335",
104
+ "@djangocfg/i18n": "^2.1.336",
105
+ "@djangocfg/ui-core": "^2.1.336",
106
106
  "consola": "^3.4.2",
107
107
  "lodash-es": "^4.18.1",
108
108
  "lucide-react": "^0.545.0",
@@ -155,10 +155,10 @@
155
155
  "material-file-icons": "^2.4.0"
156
156
  },
157
157
  "devDependencies": {
158
- "@djangocfg/i18n": "^2.1.335",
158
+ "@djangocfg/i18n": "^2.1.336",
159
159
  "@djangocfg/playground": "workspace:*",
160
- "@djangocfg/typescript-config": "^2.1.335",
161
- "@djangocfg/ui-core": "^2.1.335",
160
+ "@djangocfg/typescript-config": "^2.1.336",
161
+ "@djangocfg/ui-core": "^2.1.336",
162
162
  "@types/lodash-es": "^4.17.12",
163
163
  "@types/mapbox__mapbox-gl-draw": "^1.4.8",
164
164
  "@types/node": "^24.7.2",
package/src/index.ts CHANGED
@@ -115,6 +115,11 @@ export type { CronSchedulerProps } from './tools/CronScheduler/lazy';
115
115
  export { LazyTree } from './tools/Tree/lazy';
116
116
  export type { TreeRootProps as LazyTreeProps } from './tools/Tree/lazy';
117
117
 
118
+ // Chat (decomposed, transport-agnostic)
119
+ export { LazyChat } from './tools/Chat/lazy';
120
+ export type { ChatRootProps as LazyChatProps } from './tools/Chat/lazy';
121
+ export * from './tools/Chat';
122
+
118
123
  // ============================================================================
119
124
  // Tools (from ./tools/index.ts) - Direct imports (no lazy loading)
120
125
  // ============================================================================
@@ -16,7 +16,8 @@
16
16
  import * as CodeEditor from '../tools/CodeEditor/CodeEditor.story';
17
17
  import * as PrettyCode from '../tools/PrettyCode/PrettyCode.story';
18
18
  import * as MarkdownEditor from '../tools/MarkdownEditor/MarkdownEditor.story';
19
-
19
+ import * as Chat from '../tools/Chat/Chat.story';
20
+
20
21
  export const uiToolsStoryModules: Record<string, StoryModule> = {
21
22
  'JsonForm.story.tsx': JsonForm,
22
23
  'JsonTree.story.tsx': JsonTree,
@@ -27,5 +28,6 @@
27
28
  'CodeEditor.story.tsx': CodeEditor,
28
29
  'PrettyCode.story.tsx': PrettyCode,
29
30
  'MarkdownEditor.story.tsx': MarkdownEditor,
31
+ 'Chat.story.tsx': Chat,
30
32
  };
31
33