@design.estate/dees-catalog 3.91.0 → 3.92.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.
Files changed (228) hide show
  1. package/dist_bundle/bundle.js +10381 -4788
  2. package/dist_ts_web/00_commitinfo_data.js +1 -1
  3. package/dist_ts_web/elements/00group-appui/dees-appui/dees-appui.js +5 -4
  4. package/dist_ts_web/elements/00group-appui/dees-appui-profiledropdown/dees-appui-profiledropdown.js +6 -7
  5. package/dist_ts_web/elements/00group-appui/dees-appui-tabs/dees-appui-tabs.js +4 -6
  6. package/dist_ts_web/elements/00group-button/dees-button/dees-button.d.ts +6 -0
  7. package/dist_ts_web/elements/00group-button/dees-button/dees-button.demo.js +14 -1
  8. package/dist_ts_web/elements/00group-button/dees-button/dees-button.js +49 -24
  9. package/dist_ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.js +1 -1
  10. package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/codebox.diff.d.ts +69 -0
  11. package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/codebox.diff.js +342 -0
  12. package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.d.ts +48 -3
  13. package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.demo.js +128 -39
  14. package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.js +663 -190
  15. package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/index.d.ts +1 -0
  16. package/dist_ts_web/elements/00group-dataview/dees-dataview-codebox/index.js +2 -1
  17. package/dist_ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.d.ts +3 -0
  18. package/dist_ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.js +48 -30
  19. package/dist_ts_web/elements/00group-dataview/dees-grouped-list/dees-grouped-list.js +1 -1
  20. package/dist_ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.js +1 -2
  21. package/dist_ts_web/elements/00group-dataview/dees-storage-browser/dees-storage-keys.js +1 -1
  22. package/dist_ts_web/elements/00group-dataview/dees-table/styles.js +1 -1
  23. package/dist_ts_web/elements/00group-feedback/dees-progressbar/dees-progressbar.js +9 -9
  24. package/dist_ts_web/elements/00group-harness/dees-harness-chat/dees-harness-chat.d.ts +55 -0
  25. package/dist_ts_web/elements/00group-harness/dees-harness-chat/dees-harness-chat.demo.d.ts +1 -0
  26. package/dist_ts_web/elements/00group-harness/dees-harness-chat/dees-harness-chat.demo.js +183 -0
  27. package/dist_ts_web/elements/00group-harness/dees-harness-chat/dees-harness-chat.js +412 -0
  28. package/dist_ts_web/elements/00group-harness/dees-harness-chat/index.d.ts +1 -0
  29. package/dist_ts_web/elements/00group-harness/dees-harness-chat/index.js +2 -0
  30. package/dist_ts_web/elements/00group-harness/dees-harness-composer/dees-harness-composer.d.ts +65 -0
  31. package/dist_ts_web/elements/00group-harness/dees-harness-composer/dees-harness-composer.demo.d.ts +1 -0
  32. package/dist_ts_web/elements/00group-harness/dees-harness-composer/dees-harness-composer.demo.js +55 -0
  33. package/dist_ts_web/elements/00group-harness/dees-harness-composer/dees-harness-composer.js +589 -0
  34. package/dist_ts_web/elements/00group-harness/dees-harness-composer/index.d.ts +1 -0
  35. package/dist_ts_web/elements/00group-harness/dees-harness-composer/index.js +2 -0
  36. package/dist_ts_web/elements/00group-harness/dees-harness-content-blocks/dees-harness-content-blocks.d.ts +21 -0
  37. package/dist_ts_web/elements/00group-harness/dees-harness-content-blocks/dees-harness-content-blocks.demo.d.ts +1 -0
  38. package/dist_ts_web/elements/00group-harness/dees-harness-content-blocks/dees-harness-content-blocks.demo.js +41 -0
  39. package/dist_ts_web/elements/00group-harness/dees-harness-content-blocks/dees-harness-content-blocks.js +215 -0
  40. package/dist_ts_web/elements/00group-harness/dees-harness-content-blocks/index.d.ts +1 -0
  41. package/dist_ts_web/elements/00group-harness/dees-harness-content-blocks/index.js +2 -0
  42. package/dist_ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.d.ts +58 -0
  43. package/dist_ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.demo.d.ts +1 -0
  44. package/dist_ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.demo.js +126 -0
  45. package/dist_ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.js +551 -0
  46. package/dist_ts_web/elements/00group-harness/dees-harness-message/index.d.ts +1 -0
  47. package/dist_ts_web/elements/00group-harness/dees-harness-message/index.js +2 -0
  48. package/dist_ts_web/elements/00group-harness/dees-harness-message-list/dees-harness-message-list.d.ts +50 -0
  49. package/dist_ts_web/elements/00group-harness/dees-harness-message-list/dees-harness-message-list.demo.d.ts +1 -0
  50. package/dist_ts_web/elements/00group-harness/dees-harness-message-list/dees-harness-message-list.demo.js +101 -0
  51. package/dist_ts_web/elements/00group-harness/dees-harness-message-list/dees-harness-message-list.js +424 -0
  52. package/dist_ts_web/elements/00group-harness/dees-harness-message-list/index.d.ts +1 -0
  53. package/dist_ts_web/elements/00group-harness/dees-harness-message-list/index.js +2 -0
  54. package/dist_ts_web/elements/00group-harness/dees-harness-permission-card/dees-harness-permission-card.d.ts +27 -0
  55. package/dist_ts_web/elements/00group-harness/dees-harness-permission-card/dees-harness-permission-card.demo.d.ts +1 -0
  56. package/dist_ts_web/elements/00group-harness/dees-harness-permission-card/dees-harness-permission-card.demo.js +46 -0
  57. package/dist_ts_web/elements/00group-harness/dees-harness-permission-card/dees-harness-permission-card.js +282 -0
  58. package/dist_ts_web/elements/00group-harness/dees-harness-permission-card/index.d.ts +1 -0
  59. package/dist_ts_web/elements/00group-harness/dees-harness-permission-card/index.js +2 -0
  60. package/dist_ts_web/elements/00group-harness/dees-harness-reasoning/dees-harness-reasoning.d.ts +24 -0
  61. package/dist_ts_web/elements/00group-harness/dees-harness-reasoning/dees-harness-reasoning.demo.d.ts +1 -0
  62. package/dist_ts_web/elements/00group-harness/dees-harness-reasoning/dees-harness-reasoning.demo.js +32 -0
  63. package/dist_ts_web/elements/00group-harness/dees-harness-reasoning/dees-harness-reasoning.js +241 -0
  64. package/dist_ts_web/elements/00group-harness/dees-harness-reasoning/index.d.ts +1 -0
  65. package/dist_ts_web/elements/00group-harness/dees-harness-reasoning/index.js +2 -0
  66. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.d.ts +28 -0
  67. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.d.ts +1 -0
  68. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.js +56 -0
  69. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.js +279 -0
  70. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/index.d.ts +1 -0
  71. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/index.js +2 -0
  72. package/dist_ts_web/elements/00group-harness/dees-harness-status/dees-harness-status.d.ts +30 -0
  73. package/dist_ts_web/elements/00group-harness/dees-harness-status/dees-harness-status.demo.d.ts +1 -0
  74. package/dist_ts_web/elements/00group-harness/dees-harness-status/dees-harness-status.demo.js +35 -0
  75. package/dist_ts_web/elements/00group-harness/dees-harness-status/dees-harness-status.js +235 -0
  76. package/dist_ts_web/elements/00group-harness/dees-harness-status/index.d.ts +1 -0
  77. package/dist_ts_web/elements/00group-harness/dees-harness-status/index.js +2 -0
  78. package/dist_ts_web/elements/00group-harness/dees-harness-todos/dees-harness-todos.d.ts +27 -0
  79. package/dist_ts_web/elements/00group-harness/dees-harness-todos/dees-harness-todos.demo.d.ts +1 -0
  80. package/dist_ts_web/elements/00group-harness/dees-harness-todos/dees-harness-todos.demo.js +41 -0
  81. package/dist_ts_web/elements/00group-harness/dees-harness-todos/dees-harness-todos.js +258 -0
  82. package/dist_ts_web/elements/00group-harness/dees-harness-todos/index.d.ts +1 -0
  83. package/dist_ts_web/elements/00group-harness/dees-harness-todos/index.js +2 -0
  84. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.d.ts +35 -0
  85. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.demo.d.ts +1 -0
  86. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.demo.js +162 -0
  87. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.js +368 -0
  88. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/index.d.ts +2 -0
  89. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/index.js +3 -0
  90. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/renderers.d.ts +5 -0
  91. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/renderers.js +183 -0
  92. package/dist_ts_web/elements/00group-harness/dees-harness-usage/dees-harness-usage.d.ts +19 -0
  93. package/dist_ts_web/elements/00group-harness/dees-harness-usage/dees-harness-usage.demo.d.ts +1 -0
  94. package/dist_ts_web/elements/00group-harness/dees-harness-usage/dees-harness-usage.demo.js +25 -0
  95. package/dist_ts_web/elements/00group-harness/dees-harness-usage/dees-harness-usage.js +148 -0
  96. package/dist_ts_web/elements/00group-harness/dees-harness-usage/index.d.ts +1 -0
  97. package/dist_ts_web/elements/00group-harness/dees-harness-usage/index.js +2 -0
  98. package/dist_ts_web/elements/00group-harness/harness.demodata.d.ts +22 -0
  99. package/dist_ts_web/elements/00group-harness/harness.demodata.js +94 -0
  100. package/dist_ts_web/elements/00group-harness/harness.helpers.d.ts +37 -0
  101. package/dist_ts_web/elements/00group-harness/harness.helpers.js +221 -0
  102. package/dist_ts_web/elements/00group-harness/harness.markdown.d.ts +25 -0
  103. package/dist_ts_web/elements/00group-harness/harness.markdown.js +147 -0
  104. package/dist_ts_web/elements/00group-harness/harness.styles.d.ts +9 -0
  105. package/dist_ts_web/elements/00group-harness/harness.styles.js +94 -0
  106. package/dist_ts_web/elements/00group-harness/index.d.ts +18 -0
  107. package/dist_ts_web/elements/00group-harness/index.js +22 -0
  108. package/dist_ts_web/elements/00group-harness/interfaces.d.ts +210 -0
  109. package/dist_ts_web/elements/00group-harness/interfaces.js +11 -0
  110. package/dist_ts_web/elements/00group-harness/toolregistry.d.ts +76 -0
  111. package/dist_ts_web/elements/00group-harness/toolregistry.js +210 -0
  112. package/dist_ts_web/elements/00group-input/dees-input-code/dees-input-code.js +30 -18
  113. package/dist_ts_web/elements/00group-input/dees-input-datepicker/datepicker-popup.js +73 -46
  114. package/dist_ts_web/elements/00group-input/dees-input-datepicker/styles.js +15 -16
  115. package/dist_ts_web/elements/00group-input/dees-input-list/dees-input-list.js +2 -4
  116. package/dist_ts_web/elements/00group-input/dees-input-tags/dees-input-tags.js +36 -15
  117. package/dist_ts_web/elements/00group-input/dees-input-toggle/dees-input-toggle.js +5 -4
  118. package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/code.block.js +10 -89
  119. package/dist_ts_web/elements/00group-input/dees-input-wysiwyg/dees-input-wysiwyg.js +12 -8
  120. package/dist_ts_web/elements/00group-layout/dees-chips/dees-chips.js +1 -1
  121. package/dist_ts_web/elements/00group-layout/dees-pagination/dees-pagination.js +27 -12
  122. package/dist_ts_web/elements/00group-layout/dees-settings/dees-settings.js +1 -1
  123. package/dist_ts_web/elements/00group-layout/dees-stepper/dees-stepper.js +14 -18
  124. package/dist_ts_web/elements/00group-overlay/dees-contextmenu/dees-contextmenu.js +6 -7
  125. package/dist_ts_web/elements/00group-overlay/dees-modal/dees-modal.js +6 -21
  126. package/dist_ts_web/elements/00group-overlay/dees-windowlayer/dees-windowlayer.d.ts +2 -1
  127. package/dist_ts_web/elements/00group-overlay/dees-windowlayer/dees-windowlayer.js +10 -4
  128. package/dist_ts_web/elements/00group-simple/dees-shopping-productcard/dees-shopping-productcard.js +1 -1
  129. package/dist_ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.js +9 -8
  130. package/dist_ts_web/elements/00group-workspace/dees-workspace/dees-workspace.js +1 -1
  131. package/dist_ts_web/elements/00group-workspace/dees-workspace-filetree/dees-workspace-filetree.js +3 -4
  132. package/dist_ts_web/elements/00group-workspace/dees-workspace-markdownoutlet/dees-workspace-markdownoutlet.js +8 -78
  133. package/dist_ts_web/elements/00syntax.d.ts +28 -0
  134. package/dist_ts_web/elements/00syntax.js +98 -0
  135. package/dist_ts_web/elements/00theme.js +26 -14
  136. package/dist_ts_web/elements/index.d.ts +1 -0
  137. package/dist_ts_web/elements/index.js +2 -1
  138. package/dist_watch/bundle.js +233948 -0
  139. package/dist_watch/bundle.js.map +7 -0
  140. package/dist_watch/index.html +28 -0
  141. package/package.json +1 -1
  142. package/readme.hints.md +7 -1
  143. package/readme.md +110 -0
  144. package/readme.playbook.md +10 -0
  145. package/ts_web/00_commitinfo_data.ts +1 -1
  146. package/ts_web/elements/00group-appui/dees-appui/dees-appui.ts +4 -3
  147. package/ts_web/elements/00group-appui/dees-appui-profiledropdown/dees-appui-profiledropdown.ts +5 -6
  148. package/ts_web/elements/00group-appui/dees-appui-tabs/dees-appui-tabs.ts +3 -5
  149. package/ts_web/elements/00group-button/dees-button/dees-button.demo.ts +13 -0
  150. package/ts_web/elements/00group-button/dees-button/dees-button.ts +42 -22
  151. package/ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.ts +1 -1
  152. package/ts_web/elements/00group-dataview/dees-dataview-codebox/codebox.diff.ts +401 -0
  153. package/ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.demo.ts +132 -38
  154. package/ts_web/elements/00group-dataview/dees-dataview-codebox/dees-dataview-codebox.ts +649 -187
  155. package/ts_web/elements/00group-dataview/dees-dataview-codebox/index.ts +1 -0
  156. package/ts_web/elements/00group-dataview/dees-dataview-statusobject/dees-dataview-statusobject.ts +45 -30
  157. package/ts_web/elements/00group-dataview/dees-grouped-list/dees-grouped-list.ts +1 -1
  158. package/ts_web/elements/00group-dataview/dees-statsgrid/dees-statsgrid.ts +0 -1
  159. package/ts_web/elements/00group-dataview/dees-storage-browser/dees-storage-keys.ts +1 -1
  160. package/ts_web/elements/00group-dataview/dees-table/styles.ts +1 -1
  161. package/ts_web/elements/00group-feedback/dees-progressbar/dees-progressbar.ts +9 -9
  162. package/ts_web/elements/00group-harness/dees-harness-chat/dees-harness-chat.demo.ts +193 -0
  163. package/ts_web/elements/00group-harness/dees-harness-chat/dees-harness-chat.ts +301 -0
  164. package/ts_web/elements/00group-harness/dees-harness-chat/index.ts +1 -0
  165. package/ts_web/elements/00group-harness/dees-harness-composer/dees-harness-composer.demo.ts +56 -0
  166. package/ts_web/elements/00group-harness/dees-harness-composer/dees-harness-composer.ts +514 -0
  167. package/ts_web/elements/00group-harness/dees-harness-composer/index.ts +1 -0
  168. package/ts_web/elements/00group-harness/dees-harness-content-blocks/dees-harness-content-blocks.demo.ts +44 -0
  169. package/ts_web/elements/00group-harness/dees-harness-content-blocks/dees-harness-content-blocks.ts +172 -0
  170. package/ts_web/elements/00group-harness/dees-harness-content-blocks/index.ts +1 -0
  171. package/ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.demo.ts +129 -0
  172. package/ts_web/elements/00group-harness/dees-harness-message/dees-harness-message.ts +498 -0
  173. package/ts_web/elements/00group-harness/dees-harness-message/index.ts +1 -0
  174. package/ts_web/elements/00group-harness/dees-harness-message-list/dees-harness-message-list.demo.ts +105 -0
  175. package/ts_web/elements/00group-harness/dees-harness-message-list/dees-harness-message-list.ts +342 -0
  176. package/ts_web/elements/00group-harness/dees-harness-message-list/index.ts +1 -0
  177. package/ts_web/elements/00group-harness/dees-harness-permission-card/dees-harness-permission-card.demo.ts +47 -0
  178. package/ts_web/elements/00group-harness/dees-harness-permission-card/dees-harness-permission-card.ts +225 -0
  179. package/ts_web/elements/00group-harness/dees-harness-permission-card/index.ts +1 -0
  180. package/ts_web/elements/00group-harness/dees-harness-reasoning/dees-harness-reasoning.demo.ts +32 -0
  181. package/ts_web/elements/00group-harness/dees-harness-reasoning/dees-harness-reasoning.ts +195 -0
  182. package/ts_web/elements/00group-harness/dees-harness-reasoning/index.ts +1 -0
  183. package/ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.ts +59 -0
  184. package/ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.ts +222 -0
  185. package/ts_web/elements/00group-harness/dees-harness-session-list/index.ts +1 -0
  186. package/ts_web/elements/00group-harness/dees-harness-status/dees-harness-status.demo.ts +35 -0
  187. package/ts_web/elements/00group-harness/dees-harness-status/dees-harness-status.ts +187 -0
  188. package/ts_web/elements/00group-harness/dees-harness-status/index.ts +1 -0
  189. package/ts_web/elements/00group-harness/dees-harness-todos/dees-harness-todos.demo.ts +43 -0
  190. package/ts_web/elements/00group-harness/dees-harness-todos/dees-harness-todos.ts +206 -0
  191. package/ts_web/elements/00group-harness/dees-harness-todos/index.ts +1 -0
  192. package/ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.demo.ts +166 -0
  193. package/ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.ts +315 -0
  194. package/ts_web/elements/00group-harness/dees-harness-tool-card/index.ts +2 -0
  195. package/ts_web/elements/00group-harness/dees-harness-tool-card/renderers.ts +205 -0
  196. package/ts_web/elements/00group-harness/dees-harness-usage/dees-harness-usage.demo.ts +25 -0
  197. package/ts_web/elements/00group-harness/dees-harness-usage/dees-harness-usage.ts +96 -0
  198. package/ts_web/elements/00group-harness/dees-harness-usage/index.ts +1 -0
  199. package/ts_web/elements/00group-harness/harness.demodata.ts +113 -0
  200. package/ts_web/elements/00group-harness/harness.helpers.ts +227 -0
  201. package/ts_web/elements/00group-harness/harness.markdown.ts +151 -0
  202. package/ts_web/elements/00group-harness/harness.styles.ts +96 -0
  203. package/ts_web/elements/00group-harness/index.ts +22 -0
  204. package/ts_web/elements/00group-harness/interfaces.ts +203 -0
  205. package/ts_web/elements/00group-harness/toolregistry.ts +264 -0
  206. package/ts_web/elements/00group-input/dees-input-code/dees-input-code.ts +29 -17
  207. package/ts_web/elements/00group-input/dees-input-datepicker/datepicker-popup.ts +72 -45
  208. package/ts_web/elements/00group-input/dees-input-datepicker/styles.ts +14 -15
  209. package/ts_web/elements/00group-input/dees-input-list/dees-input-list.ts +1 -3
  210. package/ts_web/elements/00group-input/dees-input-tags/dees-input-tags.ts +35 -14
  211. package/ts_web/elements/00group-input/dees-input-toggle/dees-input-toggle.ts +4 -3
  212. package/ts_web/elements/00group-input/dees-input-wysiwyg/blocks/text/code.block.ts +9 -88
  213. package/ts_web/elements/00group-input/dees-input-wysiwyg/dees-input-wysiwyg.ts +11 -7
  214. package/ts_web/elements/00group-layout/dees-chips/dees-chips.ts +1 -1
  215. package/ts_web/elements/00group-layout/dees-pagination/dees-pagination.ts +26 -11
  216. package/ts_web/elements/00group-layout/dees-settings/dees-settings.ts +1 -1
  217. package/ts_web/elements/00group-layout/dees-stepper/dees-stepper.ts +13 -17
  218. package/ts_web/elements/00group-overlay/dees-contextmenu/dees-contextmenu.ts +5 -6
  219. package/ts_web/elements/00group-overlay/dees-modal/dees-modal.ts +5 -20
  220. package/ts_web/elements/00group-overlay/dees-windowlayer/dees-windowlayer.ts +10 -3
  221. package/ts_web/elements/00group-simple/dees-shopping-productcard/dees-shopping-productcard.ts +1 -1
  222. package/ts_web/elements/00group-simple/dees-simple-appdash/dees-simple-appdash.ts +8 -7
  223. package/ts_web/elements/00group-workspace/dees-workspace/dees-workspace.ts +1 -1
  224. package/ts_web/elements/00group-workspace/dees-workspace-filetree/dees-workspace-filetree.ts +2 -3
  225. package/ts_web/elements/00group-workspace/dees-workspace-markdownoutlet/dees-workspace-markdownoutlet.ts +7 -77
  226. package/ts_web/elements/00syntax.ts +124 -0
  227. package/ts_web/elements/00theme.ts +25 -13
  228. package/ts_web/elements/index.ts +1 -0
@@ -0,0 +1,282 @@
1
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
2
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
3
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
4
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
5
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
6
+ var _, done = false;
7
+ for (var i = decorators.length - 1; i >= 0; i--) {
8
+ var context = {};
9
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
10
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
11
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
12
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
13
+ if (kind === "accessor") {
14
+ if (result === void 0) continue;
15
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
16
+ if (_ = accept(result.get)) descriptor.get = _;
17
+ if (_ = accept(result.set)) descriptor.set = _;
18
+ if (_ = accept(result.init)) initializers.unshift(_);
19
+ }
20
+ else if (_ = accept(result)) {
21
+ if (kind === "field") initializers.unshift(_);
22
+ else descriptor[key] = _;
23
+ }
24
+ }
25
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
26
+ done = true;
27
+ };
28
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
29
+ var useValue = arguments.length > 2;
30
+ for (var i = 0; i < initializers.length; i++) {
31
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
32
+ }
33
+ return useValue ? value : void 0;
34
+ };
35
+ import { demoFunc } from './dees-harness-permission-card.demo.js';
36
+ import { DeesElement, html, css, customElement, property, state, cssManager, } from '@design.estate/dees-element';
37
+ import { themeDefaultStyles } from '../../00theme.js';
38
+ import { harnessStringifyValue } from '../harness.helpers.js';
39
+ import '../../00group-button/dees-button/dees-button.js';
40
+ import '../../00group-feedback/dees-badge/dees-badge.js';
41
+ import '../../00group-utility/dees-icon/dees-icon.js';
42
+ const badgeTypeForPermission = (permissionType) => {
43
+ if (permissionType === 'delete' || permissionType === 'shell')
44
+ return 'error';
45
+ if (permissionType === 'write' || permissionType === 'browser')
46
+ return 'warning';
47
+ return 'default';
48
+ };
49
+ /**
50
+ * Permission prompt card: title, type badge, metadata key/values, and the
51
+ * once / always / reject choices with an optional remember checkbox. Emits
52
+ * `harness-permission-response` (bubbles, composed) and disables itself
53
+ * once answered or while `busy`.
54
+ */
55
+ let DeesHarnessPermissionCard = (() => {
56
+ let _classDecorators = [customElement('dees-harness-permission-card')];
57
+ let _classDescriptor;
58
+ let _classExtraInitializers = [];
59
+ let _classThis;
60
+ let _classSuper = DeesElement;
61
+ let _request_decorators;
62
+ let _request_initializers = [];
63
+ let _request_extraInitializers = [];
64
+ let _busy_decorators;
65
+ let _busy_initializers = [];
66
+ let _busy_extraInitializers = [];
67
+ let _remember_decorators;
68
+ let _remember_initializers = [];
69
+ let _remember_extraInitializers = [];
70
+ let _answered_decorators;
71
+ let _answered_initializers = [];
72
+ let _answered_extraInitializers = [];
73
+ var DeesHarnessPermissionCard = class extends _classSuper {
74
+ static { _classThis = this; }
75
+ static {
76
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
77
+ _request_decorators = [property({ attribute: false })];
78
+ _busy_decorators = [property({ type: Boolean })];
79
+ _remember_decorators = [state()];
80
+ _answered_decorators = [state()];
81
+ __esDecorate(this, null, _request_decorators, { kind: "accessor", name: "request", static: false, private: false, access: { has: obj => "request" in obj, get: obj => obj.request, set: (obj, value) => { obj.request = value; } }, metadata: _metadata }, _request_initializers, _request_extraInitializers);
82
+ __esDecorate(this, null, _busy_decorators, { kind: "accessor", name: "busy", static: false, private: false, access: { has: obj => "busy" in obj, get: obj => obj.busy, set: (obj, value) => { obj.busy = value; } }, metadata: _metadata }, _busy_initializers, _busy_extraInitializers);
83
+ __esDecorate(this, null, _remember_decorators, { kind: "accessor", name: "remember", static: false, private: false, access: { has: obj => "remember" in obj, get: obj => obj.remember, set: (obj, value) => { obj.remember = value; } }, metadata: _metadata }, _remember_initializers, _remember_extraInitializers);
84
+ __esDecorate(this, null, _answered_decorators, { kind: "accessor", name: "answered", static: false, private: false, access: { has: obj => "answered" in obj, get: obj => obj.answered, set: (obj, value) => { obj.answered = value; } }, metadata: _metadata }, _answered_initializers, _answered_extraInitializers);
85
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
86
+ DeesHarnessPermissionCard = _classThis = _classDescriptor.value;
87
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
88
+ }
89
+ static demo = demoFunc;
90
+ static demoGroups = ['Agent Chat'];
91
+ #request_accessor_storage = __runInitializers(this, _request_initializers, { id: '', title: '', type: 'permission' });
92
+ get request() { return this.#request_accessor_storage; }
93
+ set request(value) { this.#request_accessor_storage = value; }
94
+ #busy_accessor_storage = (__runInitializers(this, _request_extraInitializers), __runInitializers(this, _busy_initializers, false));
95
+ get busy() { return this.#busy_accessor_storage; }
96
+ set busy(value) { this.#busy_accessor_storage = value; }
97
+ #remember_accessor_storage = (__runInitializers(this, _busy_extraInitializers), __runInitializers(this, _remember_initializers, false));
98
+ get remember() { return this.#remember_accessor_storage; }
99
+ set remember(value) { this.#remember_accessor_storage = value; }
100
+ #answered_accessor_storage = (__runInitializers(this, _remember_extraInitializers), __runInitializers(this, _answered_initializers, undefined));
101
+ get answered() { return this.#answered_accessor_storage; }
102
+ set answered(value) { this.#answered_accessor_storage = value; }
103
+ static styles = [
104
+ themeDefaultStyles,
105
+ cssManager.defaultStyles,
106
+ css `
107
+ :host {
108
+ display: block;
109
+ font-family: var(--dees-font-family);
110
+ /* entry: new boxes make space for themselves while fading in.
111
+ A keyframes animation (not a transition) so the parent tree's
112
+ universal theme-transition rule cannot override it in the shadow
113
+ cascade; interpolate-size lets height animate from 0 to auto
114
+ (Chromium 129+), elsewhere the height snaps and opacity still
115
+ fades. */
116
+ interpolate-size: allow-keywords;
117
+ overflow: clip;
118
+ animation: harness-entry var(--dees-transition-default) var(--dees-ease-out);
119
+ }
120
+
121
+ @keyframes harness-entry {
122
+ from {
123
+ height: 0;
124
+ margin-top: 0;
125
+ opacity: 0;
126
+ }
127
+ }
128
+
129
+ @media (prefers-reduced-motion: reduce) {
130
+ :host {
131
+ animation: none;
132
+ }
133
+ }
134
+
135
+ .card {
136
+ padding: var(--dees-spacing-sm) var(--dees-spacing-md);
137
+ border: 1px solid var(--dees-color-border-default);
138
+ border-left: 2px solid var(--dees-color-accent-warning);
139
+ border-radius: var(--dees-radius-lg);
140
+ corner-shape: var(--dees-corner-shape);
141
+ background: var(--dees-color-badge-warning-bg);
142
+ }
143
+
144
+ .titleRow {
145
+ display: flex;
146
+ align-items: center;
147
+ gap: var(--dees-spacing-sm);
148
+ margin-bottom: var(--dees-spacing-xs);
149
+ }
150
+
151
+ .titleRow dees-icon {
152
+ color: var(--dees-color-accent-warning);
153
+ }
154
+
155
+ .title {
156
+ flex: 1;
157
+ min-width: 0;
158
+ color: var(--dees-color-text-primary);
159
+ font-size: var(--dees-font-control-size-sm, 12px);
160
+ font-weight: 600;
161
+ }
162
+
163
+ .metaGrid {
164
+ display: grid;
165
+ grid-template-columns: auto minmax(0, 1fr);
166
+ gap: 2px var(--dees-spacing-md);
167
+ margin: var(--dees-spacing-xs) 0 var(--dees-spacing-sm);
168
+ font-size: var(--dees-font-caption1-size, 11px);
169
+ }
170
+
171
+ .metaKey {
172
+ color: var(--dees-color-text-secondary);
173
+ white-space: nowrap;
174
+ }
175
+
176
+ .metaValue {
177
+ color: var(--dees-color-text-primary);
178
+ font-family: var(--dees-font-family-mono);
179
+ overflow-wrap: anywhere;
180
+ }
181
+
182
+ .actions {
183
+ display: flex;
184
+ align-items: center;
185
+ gap: var(--dees-spacing-sm);
186
+ flex-wrap: wrap;
187
+ }
188
+
189
+ .rememberLabel {
190
+ display: inline-flex;
191
+ align-items: center;
192
+ gap: var(--dees-spacing-xs);
193
+ margin-left: auto;
194
+ color: var(--dees-color-text-secondary);
195
+ font-size: var(--dees-font-caption1-size, 11px);
196
+ cursor: pointer;
197
+ user-select: none;
198
+ }
199
+
200
+ .answeredNote {
201
+ color: var(--dees-color-text-secondary);
202
+ font-size: var(--dees-font-caption1-size, 11px);
203
+ }
204
+ `,
205
+ ];
206
+ render() {
207
+ const request = this.request;
208
+ const disabled = this.busy || this.answered !== undefined;
209
+ const metadataEntries = Object.entries(request.metadata ?? {});
210
+ return html `
211
+ <div class="card">
212
+ <div class="titleRow">
213
+ <dees-icon icon="lucide:ShieldQuestionMark" iconSize="15"></dees-icon>
214
+ <span class="title">${request.title || 'Permission requested'}</span>
215
+ <dees-badge type=${badgeTypeForPermission(request.type)} .text=${request.type} rounded></dees-badge>
216
+ </div>
217
+ ${metadataEntries.length
218
+ ? html `
219
+ <div class="metaGrid">
220
+ ${metadataEntries.map(([key, value]) => html `
221
+ <div class="metaKey">${key}</div>
222
+ <div class="metaValue">${harnessStringifyValue(value)}</div>
223
+ `)}
224
+ </div>
225
+ `
226
+ : ''}
227
+ <div class="actions">
228
+ ${this.answered
229
+ ? html `<span class="answeredNote">Answered: ${this.answered}${this.remember ? ' (remembered)' : ''}</span>`
230
+ : html `
231
+ <dees-button type="accent" size="sm" ?disabled=${disabled} @clicked=${() => this.respond('once')}>
232
+ Allow Once
233
+ </dees-button>
234
+ <dees-button size="sm" ?disabled=${disabled} @clicked=${() => this.respond('always')}>
235
+ Always Allow
236
+ </dees-button>
237
+ <dees-button type="destructive" size="sm" ?disabled=${disabled} @clicked=${() => this.respond('reject')}>
238
+ Reject
239
+ </dees-button>
240
+ <label class="rememberLabel">
241
+ <input
242
+ type="checkbox"
243
+ .checked=${this.remember}
244
+ ?disabled=${disabled}
245
+ @change=${(event) => {
246
+ this.remember = event.currentTarget.checked;
247
+ }}
248
+ />
249
+ remember for this session
250
+ </label>
251
+ `}
252
+ </div>
253
+ </div>
254
+ `;
255
+ }
256
+ respond(response) {
257
+ if (this.busy || this.answered !== undefined)
258
+ return;
259
+ this.answered = response;
260
+ this.dispatchEvent(new CustomEvent('harness-permission-response', {
261
+ detail: {
262
+ requestId: this.request.id,
263
+ response,
264
+ remember: this.remember || response === 'always',
265
+ request: this.request,
266
+ },
267
+ bubbles: true,
268
+ composed: true,
269
+ }));
270
+ }
271
+ constructor() {
272
+ super(...arguments);
273
+ __runInitializers(this, _answered_extraInitializers);
274
+ }
275
+ static {
276
+ __runInitializers(_classThis, _classExtraInitializers);
277
+ }
278
+ };
279
+ return DeesHarnessPermissionCard = _classThis;
280
+ })();
281
+ export { DeesHarnessPermissionCard };
282
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcy1oYXJuZXNzLXBlcm1pc3Npb24tY2FyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RzX3dlYi9lbGVtZW50cy8wMGdyb3VwLWhhcm5lc3MvZGVlcy1oYXJuZXNzLXBlcm1pc3Npb24tY2FyZC9kZWVzLWhhcm5lc3MtcGVybWlzc2lvbi1jYXJkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbEUsT0FBTyxFQUNMLFdBQVcsRUFDWCxJQUFJLEVBQ0osR0FBRyxFQUNILGFBQWEsRUFFYixRQUFRLEVBQ1IsS0FBSyxFQUNMLFVBQVUsR0FDWCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXRELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8saURBQWlELENBQUM7QUFDekQsT0FBTyxpREFBaUQsQ0FBQztBQUN6RCxPQUFPLDhDQUE4QyxDQUFDO0FBUXRELE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxjQUFzQixFQUFtQyxFQUFFO0lBQ3pGLElBQUksY0FBYyxLQUFLLFFBQVEsSUFBSSxjQUFjLEtBQUssT0FBTztRQUFFLE9BQU8sT0FBTyxDQUFDO0lBQzlFLElBQUksY0FBYyxLQUFLLE9BQU8sSUFBSSxjQUFjLEtBQUssU0FBUztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQ2pGLE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQUVGOzs7OztHQUtHO0lBRVUseUJBQXlCOzRCQURyQyxhQUFhLENBQUMsOEJBQThCLENBQUM7Ozs7c0JBQ0MsV0FBVzs7Ozs7Ozs7Ozs7Ozt5Q0FBbkIsU0FBUSxXQUFXOzs7O21DQUl2RCxRQUFRLENBQUMsRUFBRSxTQUFTLEVBQUUsS0FB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
@@ -0,0 +1 @@
1
+ export * from './dees-harness-permission-card.js';
@@ -0,0 +1,2 @@
1
+ export * from './dees-harness-permission-card.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90c193ZWIvZWxlbWVudHMvMDBncm91cC1oYXJuZXNzL2RlZXMtaGFybmVzcy1wZXJtaXNzaW9uLWNhcmQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxtQ0FBbUMsQ0FBQyJ9
@@ -0,0 +1,24 @@
1
+ import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
2
+ import type { IHarnessReasoningPart } from '../interfaces.js';
3
+ import '../../00group-utility/dees-icon/dees-icon.js';
4
+ declare global {
5
+ interface HTMLElementTagNameMap {
6
+ 'dees-harness-reasoning': DeesHarnessReasoning;
7
+ }
8
+ }
9
+ /**
10
+ * Reasoning ("thinking") disclosure for one reasoning part. Auto-opens while
11
+ * the part is streaming (no endedAt) unless the user has interacted; the
12
+ * user's expand/collapse choice wins afterwards and survives re-renders
13
+ * because it lives on this element, not in the parent's template.
14
+ */
15
+ export declare class DeesHarnessReasoning extends DeesElement {
16
+ static demo: () => TemplateResult<1>;
17
+ static demoGroups: string[];
18
+ accessor reasoningPart: IHarnessReasoningPart;
19
+ accessor expanded: boolean | undefined;
20
+ static styles: import("@design.estate/dees-element").CSSResult[];
21
+ get isStreaming(): boolean;
22
+ get isOpen(): boolean;
23
+ render(): TemplateResult;
24
+ }
@@ -0,0 +1 @@
1
+ export declare const demoFunc: () => import("@design.estate/dees-element").TemplateResult<1>;
@@ -0,0 +1,32 @@
1
+ import { html } from '@design.estate/dees-element';
2
+ export const demoFunc = () => html `
3
+ <style>
4
+ .reasoningDemo {
5
+ display: grid;
6
+ gap: 16px;
7
+ max-width: 640px;
8
+ margin: 40px auto;
9
+ padding: 24px;
10
+ border-radius: var(--dees-radius-xl);
11
+ background: var(--dees-color-bg-secondary);
12
+ }
13
+ </style>
14
+ <div class="reasoningDemo">
15
+ <dees-harness-reasoning
16
+ .reasoningPart=${{
17
+ id: 'r1',
18
+ text: 'The user wants a summary of the failing test. I should read the test output first, then check the assertion that failed and compare with the fixture data.',
19
+ startedAt: Date.now() - 4200,
20
+ endedAt: Date.now(),
21
+ }}
22
+ ></dees-harness-reasoning>
23
+ <dees-harness-reasoning
24
+ .reasoningPart=${{
25
+ id: 'r2',
26
+ text: 'Considering the tradeoffs between the two migration paths',
27
+ startedAt: Date.now() - 1500,
28
+ }}
29
+ ></dees-harness-reasoning>
30
+ </div>
31
+ `;
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcy1oYXJuZXNzLXJlYXNvbmluZy5kZW1vLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHNfd2ViL2VsZW1lbnRzLzAwZ3JvdXAtaGFybmVzcy9kZWVzLWhhcm5lc3MtcmVhc29uaW5nL2RlZXMtaGFybmVzcy1yZWFzb25pbmcuZGVtby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFbkQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQTs7Ozs7Ozs7Ozs7Ozs7dUJBY1g7SUFDZixFQUFFLEVBQUUsSUFBSTtJQUNSLElBQUksRUFBRSw0SkFBNEo7SUFDbEssU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJO0lBQzVCLE9BQU8sRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFO0NBQ3BCOzs7dUJBR2dCO0lBQ2YsRUFBRSxFQUFFLElBQUk7SUFDUixJQUFJLEVBQUUsMkRBQTJEO0lBQ2pFLFNBQVMsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSTtDQUM3Qjs7O0NBR04sQ0FBQyJ9
@@ -0,0 +1,241 @@
1
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
2
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
3
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
4
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
5
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
6
+ var _, done = false;
7
+ for (var i = decorators.length - 1; i >= 0; i--) {
8
+ var context = {};
9
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
10
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
11
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
12
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
13
+ if (kind === "accessor") {
14
+ if (result === void 0) continue;
15
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
16
+ if (_ = accept(result.get)) descriptor.get = _;
17
+ if (_ = accept(result.set)) descriptor.set = _;
18
+ if (_ = accept(result.init)) initializers.unshift(_);
19
+ }
20
+ else if (_ = accept(result)) {
21
+ if (kind === "field") initializers.unshift(_);
22
+ else descriptor[key] = _;
23
+ }
24
+ }
25
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
26
+ done = true;
27
+ };
28
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
29
+ var useValue = arguments.length > 2;
30
+ for (var i = 0; i < initializers.length; i++) {
31
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
32
+ }
33
+ return useValue ? value : void 0;
34
+ };
35
+ import { demoFunc } from './dees-harness-reasoning.demo.js';
36
+ import { DeesElement, html, css, customElement, property, state, cssManager, } from '@design.estate/dees-element';
37
+ import { themeDefaultStyles } from '../../00theme.js';
38
+ import { harnessFormatDuration } from '../harness.helpers.js';
39
+ import '../../00group-utility/dees-icon/dees-icon.js';
40
+ /**
41
+ * Reasoning ("thinking") disclosure for one reasoning part. Auto-opens while
42
+ * the part is streaming (no endedAt) unless the user has interacted; the
43
+ * user's expand/collapse choice wins afterwards and survives re-renders
44
+ * because it lives on this element, not in the parent's template.
45
+ */
46
+ let DeesHarnessReasoning = (() => {
47
+ let _classDecorators = [customElement('dees-harness-reasoning')];
48
+ let _classDescriptor;
49
+ let _classExtraInitializers = [];
50
+ let _classThis;
51
+ let _classSuper = DeesElement;
52
+ let _reasoningPart_decorators;
53
+ let _reasoningPart_initializers = [];
54
+ let _reasoningPart_extraInitializers = [];
55
+ let _expanded_decorators;
56
+ let _expanded_initializers = [];
57
+ let _expanded_extraInitializers = [];
58
+ var DeesHarnessReasoning = class extends _classSuper {
59
+ static { _classThis = this; }
60
+ static {
61
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
62
+ _reasoningPart_decorators = [property({ attribute: false })];
63
+ _expanded_decorators = [state()];
64
+ __esDecorate(this, null, _reasoningPart_decorators, { kind: "accessor", name: "reasoningPart", static: false, private: false, access: { has: obj => "reasoningPart" in obj, get: obj => obj.reasoningPart, set: (obj, value) => { obj.reasoningPart = value; } }, metadata: _metadata }, _reasoningPart_initializers, _reasoningPart_extraInitializers);
65
+ __esDecorate(this, null, _expanded_decorators, { kind: "accessor", name: "expanded", static: false, private: false, access: { has: obj => "expanded" in obj, get: obj => obj.expanded, set: (obj, value) => { obj.expanded = value; } }, metadata: _metadata }, _expanded_initializers, _expanded_extraInitializers);
66
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
67
+ DeesHarnessReasoning = _classThis = _classDescriptor.value;
68
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
69
+ }
70
+ static demo = demoFunc;
71
+ static demoGroups = ['Agent Chat'];
72
+ #reasoningPart_accessor_storage = __runInitializers(this, _reasoningPart_initializers, { id: '', text: '' });
73
+ get reasoningPart() { return this.#reasoningPart_accessor_storage; }
74
+ set reasoningPart(value) { this.#reasoningPart_accessor_storage = value; }
75
+ #expanded_accessor_storage = (__runInitializers(this, _reasoningPart_extraInitializers), __runInitializers(this, _expanded_initializers, undefined));
76
+ get expanded() { return this.#expanded_accessor_storage; }
77
+ set expanded(value) { this.#expanded_accessor_storage = value; }
78
+ static styles = [
79
+ themeDefaultStyles,
80
+ cssManager.defaultStyles,
81
+ css `
82
+ :host {
83
+ display: block;
84
+ font-family: var(--dees-font-family);
85
+ }
86
+
87
+ .reasoning {
88
+ border: 1px solid var(--dees-color-border-subtle);
89
+ border-radius: var(--dees-radius-md);
90
+ corner-shape: var(--dees-corner-shape);
91
+ background: var(--dees-color-bg-tertiary);
92
+ overflow: hidden;
93
+ animation: harness-reasoning-enter var(--dees-transition-default) var(--dees-ease-out);
94
+ }
95
+
96
+ @keyframes harness-reasoning-enter {
97
+ from {
98
+ opacity: 0;
99
+ transform: translateY(-3px);
100
+ }
101
+ to {
102
+ opacity: 1;
103
+ transform: translateY(0);
104
+ }
105
+ }
106
+
107
+ /* Expand/collapse animates through the 0fr→1fr grid trick so the body
108
+ stays in the DOM and both directions transition smoothly. */
109
+ .bodyWrap {
110
+ display: grid;
111
+ grid-template-rows: 0fr;
112
+ transition: grid-template-rows var(--dees-transition-default) var(--dees-ease-standard);
113
+ }
114
+
115
+ .bodyWrap.open {
116
+ grid-template-rows: 1fr;
117
+ }
118
+
119
+ .bodyWrap > .bodyClip {
120
+ overflow: hidden;
121
+ min-height: 0;
122
+ }
123
+
124
+ @media (prefers-reduced-motion: reduce) {
125
+ .reasoning {
126
+ animation: none;
127
+ }
128
+ .bodyWrap,
129
+ .chevron {
130
+ transition: none;
131
+ }
132
+ }
133
+
134
+ .summary {
135
+ width: 100%;
136
+ display: flex;
137
+ align-items: center;
138
+ gap: var(--dees-spacing-sm);
139
+ padding: var(--dees-spacing-xs) var(--dees-spacing-md);
140
+ border: 0;
141
+ background: transparent;
142
+ color: var(--dees-color-text-secondary);
143
+ cursor: pointer;
144
+ font-family: inherit;
145
+ font-size: var(--dees-font-caption1-size, 11px);
146
+ font-weight: 600;
147
+ text-align: left;
148
+ }
149
+
150
+ .summary:hover {
151
+ color: var(--dees-color-text-primary);
152
+ }
153
+
154
+ .chevron {
155
+ display: grid;
156
+ place-items: center;
157
+ transition: transform var(--dees-transition-fast) var(--dees-ease-standard);
158
+ }
159
+
160
+ .chevron.open {
161
+ transform: rotate(90deg);
162
+ }
163
+
164
+ .duration {
165
+ margin-left: auto;
166
+ color: var(--dees-color-text-muted);
167
+ font-weight: 400;
168
+ }
169
+
170
+ .thinkingDots::after {
171
+ content: '';
172
+ display: inline-block;
173
+ width: 1.2em;
174
+ text-align: left;
175
+ animation: harness-reasoning-dots 1.2s steps(4, end) infinite;
176
+ }
177
+
178
+ @keyframes harness-reasoning-dots {
179
+ 0% { content: ''; }
180
+ 25% { content: '.'; }
181
+ 50% { content: '..'; }
182
+ 75%, 100% { content: '...'; }
183
+ }
184
+
185
+ .body {
186
+ margin: 0;
187
+ padding: 0 var(--dees-spacing-md) var(--dees-spacing-sm);
188
+ color: var(--dees-color-text-secondary);
189
+ white-space: pre-wrap;
190
+ overflow-wrap: anywhere;
191
+ font-size: var(--dees-font-caption1-size, 11px);
192
+ line-height: 1.5;
193
+ }
194
+ `,
195
+ ];
196
+ get isStreaming() {
197
+ return Boolean(this.reasoningPart.startedAt) && !this.reasoningPart.endedAt;
198
+ }
199
+ get isOpen() {
200
+ return this.expanded ?? this.isStreaming;
201
+ }
202
+ render() {
203
+ const duration = harnessFormatDuration(this.reasoningPart.startedAt, this.reasoningPart.endedAt);
204
+ return html `
205
+ <div class="reasoning">
206
+ <button
207
+ class="summary"
208
+ type="button"
209
+ aria-expanded=${this.isOpen ? 'true' : 'false'}
210
+ @click=${() => {
211
+ this.expanded = !this.isOpen;
212
+ }}
213
+ >
214
+ <span class="chevron ${this.isOpen ? 'open' : ''}">
215
+ <dees-icon icon="lucide:ChevronRight" iconSize="12"></dees-icon>
216
+ </span>
217
+ <span class=${this.isStreaming ? 'thinkingDots' : ''}>
218
+ ${this.isStreaming ? 'Thinking' : 'Thought'}
219
+ </span>
220
+ ${duration ? html `<span class="duration">${duration}</span>` : ''}
221
+ </button>
222
+ <div class="bodyWrap ${this.isOpen ? 'open' : ''}" aria-hidden=${this.isOpen ? 'false' : 'true'}>
223
+ <div class="bodyClip">
224
+ <pre class="body">${this.reasoningPart.text || (this.isStreaming ? 'Waiting for reasoning…' : 'No reasoning emitted.')}</pre>
225
+ </div>
226
+ </div>
227
+ </div>
228
+ `;
229
+ }
230
+ constructor() {
231
+ super(...arguments);
232
+ __runInitializers(this, _expanded_extraInitializers);
233
+ }
234
+ static {
235
+ __runInitializers(_classThis, _classExtraInitializers);
236
+ }
237
+ };
238
+ return DeesHarnessReasoning = _classThis;
239
+ })();
240
+ export { DeesHarnessReasoning };
241
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcy1oYXJuZXNzLXJlYXNvbmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RzX3dlYi9lbGVtZW50cy8wMGdyb3VwLWhhcm5lc3MvZGVlcy1oYXJuZXNzLXJlYXNvbmluZy9kZWVzLWhhcm5lc3MtcmVhc29uaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDNUQsT0FBTyxFQUNMLFdBQVcsRUFDWCxJQUFJLEVBQ0osR0FBRyxFQUNILGFBQWEsRUFFYixRQUFRLEVBQ1IsS0FBSyxFQUNMLFVBQVUsR0FDWCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXRELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzlELE9BQU8sOENBQThDLENBQUM7QUFRdEQ7Ozs7O0dBS0c7SUFFVSxvQkFBb0I7NEJBRGhDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQzs7OztzQkFDRSxXQUFXOzs7Ozs7O29DQUFuQixTQUFRLFdBQVc7Ozs7eUNBSWxELFFBQVEsQ0FBQyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQztvQ0FHOUIsS0FBSyxFQUFFO1lBRlIsNExBQVMsYUFBYSw2QkFBYixhQUFhLHFHQUErQztZQUdyRSw2S0FBUyxRQUFRLDZCQUFSLFFBQVEsMkZBQWtDO1lBUnJELDZLQXFLQzs7OztRQXBLUSxNQUFNLENBQUMsSUFBSSxHQUFHLFFBQVEsQ0FBQztRQUN2QixNQUFNLENBQUMsVUFBVSxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7UUFHMUMsdUZBQWdELEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUM7UUFBckUsSUFBUyxhQUFhLG1EQUErQztRQUFyRSxJQUFTLGFBQWEseURBQStDO1FBR3JFLHlJQUF5QyxTQUFTLEdBQUM7UUFBbkQsSUFBUyxRQUFRLDhDQUFrQztRQUFuRCxJQUFTLFFBQVEsb0RBQWtDO1FBRTVDLE1BQU0sQ0FBQyxNQUFNLEdBQUc7WUFDckIsa0JBQWtCO1lBQ2xCLFVBQVUsQ0FBQyxhQUFhO1lBQ3hCLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0FpSEY7U0FDRixDQUFDO1FBRUYsSUFBVyxXQUFXO1lBQ3BCLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztRQUM5RSxDQUFDO1FBRUQsSUFBVyxNQUFNO1lBQ2YsT0FBTyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDM0MsQ0FBQztRQUVNLE1BQU07WUFDWCxNQUFNLFFBQVEsR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2pHLE9BQU8sSUFBSSxDQUFBOzs7OzswQkFLVyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU87bUJBQ3JDLEdBQUcsRUFBRTtnQkFDWixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUMvQixDQUFDOztpQ0FFc0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFOzs7d0JBR2xDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRTtjQUNoRCxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVM7O1lBRTNDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFBLDBCQUEwQixRQUFRLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTs7K0JBRTVDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNOztnQ0FFdkUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsdUJBQXVCLENBQUM7Ozs7S0FJN0gsQ0FBQztRQUNKLENBQUM7Ozs7OztZQXBLVSx1REFBb0I7Ozs7O1NBQXBCLG9CQUFvQiJ9
@@ -0,0 +1 @@
1
+ export * from './dees-harness-reasoning.js';
@@ -0,0 +1,2 @@
1
+ export * from './dees-harness-reasoning.js';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90c193ZWIvZWxlbWVudHMvMDBncm91cC1oYXJuZXNzL2RlZXMtaGFybmVzcy1yZWFzb25pbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQyJ9
@@ -0,0 +1,28 @@
1
+ import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
2
+ import type { IHarnessSessionMeta } from '../interfaces.js';
3
+ import '../../00group-utility/dees-icon/dees-icon.js';
4
+ declare global {
5
+ interface HTMLElementTagNameMap {
6
+ 'dees-harness-session-list': DeesHarnessSessionList;
7
+ }
8
+ }
9
+ /**
10
+ * Searchable conversation list, embeddable in a sidebar or a DeesModal.
11
+ * Emits `harness-session-select` on click and `harness-session-open` on
12
+ * double-click or Enter.
13
+ */
14
+ export declare class DeesHarnessSessionList extends DeesElement {
15
+ static demo: () => TemplateResult<1>;
16
+ static demoGroups: string[];
17
+ accessor sessions: IHarnessSessionMeta[];
18
+ accessor selectedSessionId: string;
19
+ accessor loading: boolean;
20
+ accessor emptyText: string;
21
+ accessor search: string;
22
+ static styles: import("@design.estate/dees-element").CSSResult[];
23
+ private get filteredSessions();
24
+ focusSearch(): void;
25
+ render(): TemplateResult;
26
+ private renderItem;
27
+ private emit;
28
+ }
@@ -0,0 +1 @@
1
+ export declare const demoFunc: () => import("@design.estate/dees-element").TemplateResult<1>;