@k2b/ui 0.26.0 → 0.28.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 (231) hide show
  1. package/README.md +1 -1
  2. package/dist/base.css +147 -2
  3. package/dist/browser/actions/ContextMenu.js +30 -4
  4. package/dist/browser/actions/ContextMenu.js.map +1 -1
  5. package/dist/browser/actions/Dropdown.js +184 -158
  6. package/dist/browser/actions/Dropdown.js.map +1 -1
  7. package/dist/browser/actions/GestureMenu.js +71 -138
  8. package/dist/browser/actions/GestureMenu.js.map +1 -1
  9. package/dist/browser/actions/Toolbar.js +379 -48
  10. package/dist/browser/actions/Toolbar.js.map +1 -1
  11. package/dist/browser/actions/index.js.map +1 -1
  12. package/dist/browser/actions/menu-rows.js +15 -0
  13. package/dist/browser/actions/menu-rows.js.map +1 -0
  14. package/dist/browser/actions/menu-sheet.js +154 -0
  15. package/dist/browser/actions/menu-sheet.js.map +1 -0
  16. package/dist/browser/actions/toolbar-messages.js +20 -0
  17. package/dist/browser/actions/toolbar-messages.js.map +1 -0
  18. package/dist/browser/chart-inspection.js +3 -0
  19. package/dist/browser/chart-inspection.js.map +1 -0
  20. package/dist/browser/chat/ChatComposer.js +1020 -431
  21. package/dist/browser/chat/ChatComposer.js.map +1 -1
  22. package/dist/browser/chat/chat-behavior.js +4 -0
  23. package/dist/browser/chat/chat-behavior.js.map +1 -1
  24. package/dist/browser/chat/chat-messages.js +33 -1
  25. package/dist/browser/chat/chat-messages.js.map +1 -1
  26. package/dist/browser/chat/command-search.js +173 -0
  27. package/dist/browser/chat/command-search.js.map +1 -0
  28. package/dist/browser/chat/composer-document.js +1 -1
  29. package/dist/browser/chat/composer-document.js.map +1 -1
  30. package/dist/browser/chat/index.js +2 -0
  31. package/dist/browser/chat/index.js.map +1 -1
  32. package/dist/browser/chat/reaction-people.js +15 -0
  33. package/dist/browser/chat/reaction-people.js.map +1 -0
  34. package/dist/browser/content/CalendarDayView.js +28 -3
  35. package/dist/browser/content/CalendarDayView.js.map +1 -1
  36. package/dist/browser/content/Chart.js +6 -15
  37. package/dist/browser/content/Chart.js.map +1 -1
  38. package/dist/browser/content/ChartSnapshotView.js +7 -10
  39. package/dist/browser/content/ChartSnapshotView.js.map +1 -1
  40. package/dist/browser/content/MessageRow.js +330 -448
  41. package/dist/browser/content/MessageRow.js.map +1 -1
  42. package/dist/browser/content/ReactionBar.js +419 -0
  43. package/dist/browser/content/ReactionBar.js.map +1 -0
  44. package/dist/browser/content/chart-inspection-core.js +557 -0
  45. package/dist/browser/content/chart-inspection-core.js.map +1 -0
  46. package/dist/browser/content/chart-inspection.js +10 -445
  47. package/dist/browser/content/chart-inspection.js.map +1 -1
  48. package/dist/browser/content/chart-line-gaps.js +1 -1
  49. package/dist/browser/content/chart-line-gaps.js.map +1 -1
  50. package/dist/browser/content/chart-snapshot.js +1 -1
  51. package/dist/browser/content/chart-snapshot.js.map +1 -1
  52. package/dist/browser/content/index.js +1 -0
  53. package/dist/browser/content/index.js.map +1 -1
  54. package/dist/browser/feedback/dialog-core.js +135 -23
  55. package/dist/browser/feedback/dialog-core.js.map +1 -1
  56. package/dist/browser/index.js +1 -0
  57. package/dist/browser/index.js.map +1 -1
  58. package/dist/browser/input-mode.js +40 -0
  59. package/dist/browser/input-mode.js.map +1 -0
  60. package/dist/browser/inputs/Combobox.js +4 -2
  61. package/dist/browser/inputs/Combobox.js.map +1 -1
  62. package/dist/browser/inputs/FileDropTarget.js +24 -9
  63. package/dist/browser/inputs/FileDropTarget.js.map +1 -1
  64. package/dist/browser/inputs/FileInputs.js +2 -2
  65. package/dist/browser/inputs/FileInputs.js.map +1 -1
  66. package/dist/browser/inputs/SelectChip.js +52 -12
  67. package/dist/browser/inputs/SelectChip.js.map +1 -1
  68. package/dist/browser/inputs/emoji/EmojiPicker.js +13 -0
  69. package/dist/browser/inputs/emoji/EmojiPicker.js.map +1 -1
  70. package/dist/browser/inputs/file-drop.js.map +1 -1
  71. package/dist/browser/layout/AppWorkspace.js +708 -515
  72. package/dist/browser/layout/AppWorkspace.js.map +1 -1
  73. package/dist/browser/layout/BottomSheet.js +8 -0
  74. package/dist/browser/layout/BottomSheet.js.map +1 -1
  75. package/dist/browser/layout/DetailPanel.js +283 -197
  76. package/dist/browser/layout/DetailPanel.js.map +1 -1
  77. package/dist/browser/layout/Discussion.js +233 -185
  78. package/dist/browser/layout/Discussion.js.map +1 -1
  79. package/dist/browser/layout/TableOfContents.js +10 -2
  80. package/dist/browser/layout/TableOfContents.js.map +1 -1
  81. package/dist/browser/layout/app-workspace-controller.js +155 -23
  82. package/dist/browser/layout/app-workspace-controller.js.map +1 -1
  83. package/dist/browser/layout/app-workspace-state.js +5 -1
  84. package/dist/browser/layout/app-workspace-state.js.map +1 -1
  85. package/dist/browser/layout/detail-panel-messages.js +35 -0
  86. package/dist/browser/layout/detail-panel-messages.js.map +1 -0
  87. package/dist/browser/layout/index.js +1 -1
  88. package/dist/browser/layout/index.js.map +1 -1
  89. package/dist/browser/surfaces/Avatar.js +50 -20
  90. package/dist/browser/surfaces/Avatar.js.map +1 -1
  91. package/dist/browser/surfaces/AvatarStack.js +406 -0
  92. package/dist/browser/surfaces/AvatarStack.js.map +1 -0
  93. package/dist/browser/surfaces/avatar-messages.js +8 -2
  94. package/dist/browser/surfaces/avatar-messages.js.map +1 -1
  95. package/dist/browser/surfaces/index.js +1 -0
  96. package/dist/browser/surfaces/index.js.map +1 -1
  97. package/dist/ssr/actions/ContextMenu.js +21 -3
  98. package/dist/ssr/actions/ContextMenu.js.map +1 -1
  99. package/dist/ssr/actions/Dropdown.js +140 -72
  100. package/dist/ssr/actions/Dropdown.js.map +1 -1
  101. package/dist/ssr/actions/GestureMenu.js +52 -106
  102. package/dist/ssr/actions/GestureMenu.js.map +1 -1
  103. package/dist/ssr/actions/Toolbar.js +294 -14
  104. package/dist/ssr/actions/Toolbar.js.map +1 -1
  105. package/dist/ssr/actions/index.js.map +1 -1
  106. package/dist/ssr/actions/menu-rows.js +15 -0
  107. package/dist/ssr/actions/menu-rows.js.map +1 -0
  108. package/dist/ssr/actions/menu-sheet.js +138 -0
  109. package/dist/ssr/actions/menu-sheet.js.map +1 -0
  110. package/dist/ssr/actions/toolbar-messages.js +20 -0
  111. package/dist/ssr/actions/toolbar-messages.js.map +1 -0
  112. package/dist/ssr/chart-inspection.js +3 -0
  113. package/dist/ssr/chart-inspection.js.map +1 -0
  114. package/dist/ssr/chat/ChatComposer.js +604 -113
  115. package/dist/ssr/chat/ChatComposer.js.map +1 -1
  116. package/dist/ssr/chat/chat-behavior.js +4 -0
  117. package/dist/ssr/chat/chat-behavior.js.map +1 -1
  118. package/dist/ssr/chat/chat-messages.js +33 -1
  119. package/dist/ssr/chat/chat-messages.js.map +1 -1
  120. package/dist/ssr/chat/command-search.js +173 -0
  121. package/dist/ssr/chat/command-search.js.map +1 -0
  122. package/dist/ssr/chat/composer-document.js +1 -1
  123. package/dist/ssr/chat/composer-document.js.map +1 -1
  124. package/dist/ssr/chat/index.js +2 -0
  125. package/dist/ssr/chat/index.js.map +1 -1
  126. package/dist/ssr/chat/reaction-people.js +15 -0
  127. package/dist/ssr/chat/reaction-people.js.map +1 -0
  128. package/dist/ssr/content/CalendarDayView.js +28 -3
  129. package/dist/ssr/content/CalendarDayView.js.map +1 -1
  130. package/dist/ssr/content/Chart.js +6 -15
  131. package/dist/ssr/content/Chart.js.map +1 -1
  132. package/dist/ssr/content/ChartSnapshotView.js +7 -10
  133. package/dist/ssr/content/ChartSnapshotView.js.map +1 -1
  134. package/dist/ssr/content/MessageRow.js +98 -152
  135. package/dist/ssr/content/MessageRow.js.map +1 -1
  136. package/dist/ssr/content/ReactionBar.js +304 -0
  137. package/dist/ssr/content/ReactionBar.js.map +1 -0
  138. package/dist/ssr/content/chart-inspection-core.js +557 -0
  139. package/dist/ssr/content/chart-inspection-core.js.map +1 -0
  140. package/dist/ssr/content/chart-inspection.js +10 -445
  141. package/dist/ssr/content/chart-inspection.js.map +1 -1
  142. package/dist/ssr/content/chart-line-gaps.js +1 -1
  143. package/dist/ssr/content/chart-line-gaps.js.map +1 -1
  144. package/dist/ssr/content/chart-snapshot.js +1 -1
  145. package/dist/ssr/content/chart-snapshot.js.map +1 -1
  146. package/dist/ssr/content/index.js +1 -0
  147. package/dist/ssr/content/index.js.map +1 -1
  148. package/dist/ssr/feedback/dialog-core.js +135 -23
  149. package/dist/ssr/feedback/dialog-core.js.map +1 -1
  150. package/dist/ssr/index.js +1 -0
  151. package/dist/ssr/index.js.map +1 -1
  152. package/dist/ssr/input-mode.js +40 -0
  153. package/dist/ssr/input-mode.js.map +1 -0
  154. package/dist/ssr/inputs/Combobox.js +4 -2
  155. package/dist/ssr/inputs/Combobox.js.map +1 -1
  156. package/dist/ssr/inputs/FileDropTarget.js +17 -5
  157. package/dist/ssr/inputs/FileDropTarget.js.map +1 -1
  158. package/dist/ssr/inputs/FileInputs.js +2 -2
  159. package/dist/ssr/inputs/FileInputs.js.map +1 -1
  160. package/dist/ssr/inputs/SelectChip.js +44 -11
  161. package/dist/ssr/inputs/SelectChip.js.map +1 -1
  162. package/dist/ssr/inputs/emoji/EmojiPicker.js +12 -0
  163. package/dist/ssr/inputs/emoji/EmojiPicker.js.map +1 -1
  164. package/dist/ssr/inputs/file-drop.js.map +1 -1
  165. package/dist/ssr/layout/AppWorkspace.js +242 -105
  166. package/dist/ssr/layout/AppWorkspace.js.map +1 -1
  167. package/dist/ssr/layout/BottomSheet.js +8 -0
  168. package/dist/ssr/layout/BottomSheet.js.map +1 -1
  169. package/dist/ssr/layout/DetailPanel.js +112 -58
  170. package/dist/ssr/layout/DetailPanel.js.map +1 -1
  171. package/dist/ssr/layout/Discussion.js +63 -36
  172. package/dist/ssr/layout/Discussion.js.map +1 -1
  173. package/dist/ssr/layout/TableOfContents.js +10 -2
  174. package/dist/ssr/layout/TableOfContents.js.map +1 -1
  175. package/dist/ssr/layout/app-workspace-controller.js +155 -23
  176. package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
  177. package/dist/ssr/layout/app-workspace-state.js +5 -1
  178. package/dist/ssr/layout/app-workspace-state.js.map +1 -1
  179. package/dist/ssr/layout/detail-panel-messages.js +35 -0
  180. package/dist/ssr/layout/detail-panel-messages.js.map +1 -0
  181. package/dist/ssr/layout/index.js +1 -1
  182. package/dist/ssr/layout/index.js.map +1 -1
  183. package/dist/ssr/surfaces/Avatar.js +20 -2
  184. package/dist/ssr/surfaces/Avatar.js.map +1 -1
  185. package/dist/ssr/surfaces/AvatarStack.js +286 -0
  186. package/dist/ssr/surfaces/AvatarStack.js.map +1 -0
  187. package/dist/ssr/surfaces/avatar-messages.js +8 -2
  188. package/dist/ssr/surfaces/avatar-messages.js.map +1 -1
  189. package/dist/ssr/surfaces/index.js +1 -0
  190. package/dist/ssr/surfaces/index.js.map +1 -1
  191. package/dist/styles.css +1 -1
  192. package/dist/types/actions/ContextMenu.d.ts +8 -0
  193. package/dist/types/actions/Dropdown.d.ts +12 -5
  194. package/dist/types/actions/GestureMenu.d.ts +6 -4
  195. package/dist/types/actions/Toolbar.d.ts +20 -0
  196. package/dist/types/actions/index.d.ts +1 -1
  197. package/dist/types/actions/menu-rows.d.ts +5 -0
  198. package/dist/types/actions/menu-sheet.d.ts +22 -0
  199. package/dist/types/actions/toolbar-messages.d.ts +8 -0
  200. package/dist/types/chart-inspection.d.ts +2 -0
  201. package/dist/types/chat/ChatComposer.d.ts +51 -2
  202. package/dist/types/chat/chat-behavior.d.ts +4 -0
  203. package/dist/types/chat/chat-messages.d.ts +17 -2
  204. package/dist/types/chat/command-search.d.ts +41 -0
  205. package/dist/types/chat/index.d.ts +3 -1
  206. package/dist/types/chat/reaction-people.d.ts +9 -0
  207. package/dist/types/content/Chart.d.ts +2 -2
  208. package/dist/types/content/MessageRow.d.ts +3 -10
  209. package/dist/types/content/ReactionBar.d.ts +32 -0
  210. package/dist/types/content/chart-inspection-core.d.ts +61 -0
  211. package/dist/types/content/chart-inspection.d.ts +4 -20
  212. package/dist/types/content/chart-snapshot.d.ts +1 -1
  213. package/dist/types/content/index.d.ts +2 -1
  214. package/dist/types/feedback/dialog-core.d.ts +16 -1
  215. package/dist/types/index.d.ts +1 -0
  216. package/dist/types/input-mode.d.ts +7 -0
  217. package/dist/types/inputs/FileDropTarget.d.ts +6 -3
  218. package/dist/types/inputs/SelectChip.d.ts +6 -0
  219. package/dist/types/inputs/file-drop.d.ts +2 -0
  220. package/dist/types/layout/AppWorkspace.d.ts +13 -1
  221. package/dist/types/layout/BottomSheet.d.ts +8 -0
  222. package/dist/types/layout/DetailPanel.d.ts +11 -0
  223. package/dist/types/layout/Discussion.d.ts +8 -0
  224. package/dist/types/layout/TableOfContents.d.ts +2 -0
  225. package/dist/types/layout/detail-panel-messages.d.ts +15 -0
  226. package/dist/types/layout/index.d.ts +1 -1
  227. package/dist/types/surfaces/Avatar.d.ts +12 -0
  228. package/dist/types/surfaces/AvatarStack.d.ts +41 -0
  229. package/dist/types/surfaces/avatar-messages.d.ts +3 -0
  230. package/dist/types/surfaces/index.d.ts +3 -1
  231. package/package.json +9 -4
@@ -1,8 +1,8 @@
1
1
  import { template as _$template } from "solid-js/web";
2
2
  import { setProperty as _$setProperty } from "solid-js/web";
3
3
  import { mergeProps as _$mergeProps } from "solid-js/web";
4
- import { setAttribute as _$setAttribute } from "solid-js/web";
5
4
  import { use as _$use } from "solid-js/web";
5
+ import { setAttribute as _$setAttribute } from "solid-js/web";
6
6
  import { className as _$className } from "solid-js/web";
7
7
  import { effect as _$effect } from "solid-js/web";
8
8
  import { getNextMarker as _$getNextMarker } from "solid-js/web";
@@ -23,32 +23,38 @@ var _tmpl$ = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__header-leadin
23
23
  _tmpl$1 = /*#__PURE__*/_$template(`<section><header class=k2b-detail-panel__summary-header><h3></h3><!$><!/></header><div class=k2b-detail-panel__summary-body>`),
24
24
  _tmpl$10 = /*#__PURE__*/_$template(`<div role=group>`),
25
25
  _tmpl$11 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-icon aria-hidden=true><i>`),
26
- _tmpl$12 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-leading>`),
27
- _tmpl$13 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-description>`),
28
- _tmpl$14 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-copy><span class=k2b-detail-panel__action-title></span><!$><!/>`),
29
- _tmpl$15 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-trailing>`),
30
- _tmpl$16 = /*#__PURE__*/_$template(`<i class="ti ti-dots"aria-hidden=true>`),
31
- _tmpl$17 = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__action-row><!$><!/><!$><!/><!$><!/>`),
32
- _tmpl$18 = /*#__PURE__*/_$template(`<i aria-hidden=true>`),
33
- _tmpl$19 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-description>`),
34
- _tmpl$20 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-copy><span class=k2b-detail-panel__section-title></span><!$><!/>`),
35
- _tmpl$21 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-meta>`),
36
- _tmpl$22 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-toggle aria-hidden=true><i class="ti ti-chevron-down">`),
37
- _tmpl$23 = /*#__PURE__*/_$template(`<p class=k2b-detail-panel__section-description>`),
38
- _tmpl$24 = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__section-meta>`),
39
- _tmpl$25 = /*#__PURE__*/_$template(`<i class="ti ti-chevron-up"aria-hidden=true>`),
40
- _tmpl$26 = /*#__PURE__*/_$template(`<section><div></div><div><header class=k2b-detail-panel__section-header><!$><!/><div class=k2b-detail-panel__section-copy><h3></h3><!$><!/></div><!$><!/><!$><!/></header></div><div class=k2b-detail-panel__section-body>`),
41
- _tmpl$27 = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__section-actions>`),
42
- _tmpl$28 = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__section-body>`),
43
- _tmpl$29 = /*#__PURE__*/_$template(`<section><header class=k2b-detail-panel__section-header><!$><!/><div class=k2b-detail-panel__section-copy><h3></h3><!$><!/></div><!$><!/><!$><!/></header><!$><!/>`);
26
+ _tmpl$12 = /*#__PURE__*/_$template(`<span class=k2b-count-chip>`),
27
+ _tmpl$13 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__none>`),
28
+ _tmpl$14 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-meta>`),
29
+ _tmpl$15 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-leading>`),
30
+ _tmpl$16 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-description>`),
31
+ _tmpl$17 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-copy><span class=k2b-detail-panel__action-title></span><!$><!/>`),
32
+ _tmpl$18 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__action-trailing>`),
33
+ _tmpl$19 = /*#__PURE__*/_$template(`<i class="ti ti-dots"aria-hidden=true>`),
34
+ _tmpl$20 = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__action-row><!$><!/><!$><!/><!$><!/>`),
35
+ _tmpl$21 = /*#__PURE__*/_$template(`<i aria-hidden=true>`),
36
+ _tmpl$22 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-description>`),
37
+ _tmpl$23 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-copy><span class=k2b-detail-panel__section-heading><span class=k2b-detail-panel__section-title></span><!$><!/></span><!$><!/>`),
38
+ _tmpl$24 = /*#__PURE__*/_$template(`<span class=k2b-detail-panel__section-toggle aria-hidden=true><i class="ti ti-chevron-down">`),
39
+ _tmpl$25 = /*#__PURE__*/_$template(`<p class=k2b-detail-panel__section-description>`),
40
+ _tmpl$26 = /*#__PURE__*/_$template(`<i class="ti ti-chevron-up"aria-hidden=true>`),
41
+ _tmpl$27 = /*#__PURE__*/_$template(`<section><div></div><div><header class=k2b-detail-panel__section-header><!$><!/><div class=k2b-detail-panel__section-copy><div class=k2b-detail-panel__section-heading><h3></h3><!$><!/></div><!$><!/></div><!$><!/></header></div><div class=k2b-detail-panel__section-body>`),
42
+ _tmpl$28 = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__section-actions>`),
43
+ _tmpl$29 = /*#__PURE__*/_$template(`<div class=k2b-detail-panel__section-body>`),
44
+ _tmpl$30 = /*#__PURE__*/_$template(`<section><header class=k2b-detail-panel__section-header><!$><!/><div class=k2b-detail-panel__section-copy><div class=k2b-detail-panel__section-heading><h3></h3><!$><!/></div><!$><!/></div><!$><!/></header><!$><!/>`);
44
45
  import { children, createEffect, createSignal, createUniqueId, Show, splitProps } from "solid-js";
45
46
  import { Button, ButtonLink, IconButton } from "../actions/Button";
46
47
  import { Dropdown } from "../actions/Dropdown";
48
+ import { useDetailPanelMessages } from "./detail-panel-messages";
47
49
  import { createScrollFade } from "./scroll-fade";
48
50
 
49
51
  /** One direct secondary command, rendered as a sibling icon button at the end of the row. */
50
52
 
51
53
  const classNames = (base, extra) => extra ? `${base} ${extra}` : base;
54
+ const showTruncatedTitle = event => {
55
+ const heading = event.currentTarget;
56
+ if (heading.scrollHeight > heading.clientHeight + 1) heading.title = heading.textContent ?? "";else heading.removeAttribute("title");
57
+ };
52
58
  const DetailPanelHeader = props => (() => {
53
59
  var _el$ = _$getNextElement(_tmpl$7),
54
60
  _el$2 = _el$.firstChild,
@@ -85,6 +91,7 @@ const DetailPanelHeader = props => (() => {
85
91
  return _el$3;
86
92
  }
87
93
  }), _el$17, _co$5);
94
+ _el$5.addEventListener("pointerenter", showTruncatedTitle);
88
95
  _$insert(_el$5, () => props.title);
89
96
  _$insert(_el$4, _$createComponent(Show, {
90
97
  get when() {
@@ -139,7 +146,16 @@ const DetailPanelHeader = props => (() => {
139
146
  return _el$20;
140
147
  }
141
148
  }), _el$22, _co$7);
142
- _$effect(() => _$className(_el$, classNames("k2b-detail-panel__header", props.class)));
149
+ _$effect(_p$ => {
150
+ var _v$ = classNames("k2b-detail-panel__header", props.class),
151
+ _v$2 = props.icon || props.leading ? "true" : undefined;
152
+ _v$ !== _p$.e && _$className(_el$, _p$.e = _v$);
153
+ _v$2 !== _p$.t && _$setAttribute(_el$2, "data-identity", _p$.t = _v$2);
154
+ return _p$;
155
+ }, {
156
+ e: undefined,
157
+ t: undefined
158
+ });
143
159
  return _el$;
144
160
  })();
145
161
  const DetailPanelBody = props => {
@@ -151,12 +167,12 @@ const DetailPanelBody = props => {
151
167
  typeof _ref$ === "function" ? _$use(_ref$, _el$25) : body = _el$25;
152
168
  _$insert(_el$25, () => props.children);
153
169
  _$effect(_p$ => {
154
- var _v$ = classNames("k2b-detail-panel__body", props.class),
155
- _v$2 = props.scrollFade !== false ? "both" : undefined,
156
- _v$3 = props.scrollPreserveKey;
157
- _v$ !== _p$.e && _$className(_el$25, _p$.e = _v$);
158
- _v$2 !== _p$.t && _$setAttribute(_el$25, "data-scroll-fade-mode", _p$.t = _v$2);
159
- _v$3 !== _p$.a && _$setAttribute(_el$25, "data-scroll-preserve", _p$.a = _v$3);
170
+ var _v$3 = classNames("k2b-detail-panel__body", props.class),
171
+ _v$4 = props.scrollFade !== false ? "both" : undefined,
172
+ _v$5 = props.scrollPreserveKey;
173
+ _v$3 !== _p$.e && _$className(_el$25, _p$.e = _v$3);
174
+ _v$4 !== _p$.t && _$setAttribute(_el$25, "data-scroll-fade-mode", _p$.t = _v$4);
175
+ _v$5 !== _p$.a && _$setAttribute(_el$25, "data-scroll-preserve", _p$.a = _v$5);
160
176
  return _p$;
161
177
  }, {
162
178
  e: undefined,
@@ -197,10 +213,10 @@ const DetailPanelGroup = props => (() => {
197
213
  var _el$33 = _$getNextElement(_tmpl$10);
198
214
  _$insert(_el$33, () => props.children);
199
215
  _$effect(_p$ => {
200
- var _v$4 = classNames("k2b-detail-panel__group", props.class),
201
- _v$5 = props.label;
202
- _v$4 !== _p$.e && _$className(_el$33, _p$.e = _v$4);
203
- _v$5 !== _p$.t && _$setAttribute(_el$33, "aria-label", _p$.t = _v$5);
216
+ var _v$6 = classNames("k2b-detail-panel__group", props.class),
217
+ _v$7 = props.label;
218
+ _v$6 !== _p$.e && _$className(_el$33, _p$.e = _v$6);
219
+ _v$7 !== _p$.t && _$setAttribute(_el$33, "aria-label", _p$.t = _v$7);
204
220
  return _p$;
205
221
  }, {
206
222
  e: undefined,
@@ -216,10 +232,10 @@ const DetailPanelSectionIcon = props => _$createComponent(Show, {
216
232
  var _el$34 = _$getNextElement(_tmpl$11),
217
233
  _el$35 = _el$34.firstChild;
218
234
  _$effect(_p$ => {
219
- var _v$6 = props.tone ?? "neutral",
220
- _v$7 = icon();
221
- _v$6 !== _p$.e && _$setAttribute(_el$34, "data-tone", _p$.e = _v$6);
222
- _v$7 !== _p$.t && _$className(_el$35, _p$.t = _v$7);
235
+ var _v$8 = props.tone ?? "neutral",
236
+ _v$9 = icon();
237
+ _v$8 !== _p$.e && _$setAttribute(_el$34, "data-tone", _p$.e = _v$8);
238
+ _v$9 !== _p$.t && _$className(_el$35, _p$.t = _v$9);
223
239
  return _p$;
224
240
  }, {
225
241
  e: undefined,
@@ -228,44 +244,84 @@ const DetailPanelSectionIcon = props => _$createComponent(Show, {
228
244
  return _el$34;
229
245
  })()
230
246
  });
231
- const DetailPanelActionContent = props => [_$createComponent(Show, {
247
+
248
+ /** A count chip, or "None yet" for zero; shared by sections and discussions. */
249
+ export const DetailPanelCount = props => {
250
+ const messages = useDetailPanelMessages();
251
+ return _$createComponent(Show, {
252
+ get when() {
253
+ return props.count > 0;
254
+ },
255
+ get fallback() {
256
+ return (() => {
257
+ var _el$37 = _$getNextElement(_tmpl$13);
258
+ _$insert(_el$37, () => messages().noneYet);
259
+ return _el$37;
260
+ })();
261
+ },
262
+ get children() {
263
+ var _el$36 = _$getNextElement(_tmpl$12);
264
+ _$insert(_el$36, () => props.count);
265
+ return _el$36;
266
+ }
267
+ });
268
+ };
269
+
270
+ /** Title, then its count and state right after it, so every section reads the same way. */
271
+ const SectionTitleMeta = props => [_$createComponent(Show, {
232
272
  get when() {
233
- return props.leading;
273
+ return props.count !== undefined;
234
274
  },
235
275
  get children() {
236
- var _el$36 = _$getNextElement(_tmpl$12);
237
- _$insert(_el$36, () => props.leading);
238
- return _el$36;
276
+ return _$createComponent(DetailPanelCount, {
277
+ get count() {
278
+ return props.count ?? 0;
279
+ }
280
+ });
239
281
  }
240
- }), (() => {
241
- var _el$37 = _$getNextElement(_tmpl$14),
242
- _el$38 = _el$37.firstChild,
243
- _el$40 = _el$38.nextSibling,
244
- [_el$41, _co$9] = _$getNextMarker(_el$40.nextSibling);
245
- _$insert(_el$38, () => props.title);
246
- _$insert(_el$37, _$createComponent(Show, {
282
+ }), _$createComponent(Show, {
283
+ get when() {
284
+ return props.meta;
285
+ },
286
+ get children() {
287
+ var _el$38 = _$getNextElement(_tmpl$14);
288
+ _$insert(_el$38, () => props.meta);
289
+ return _el$38;
290
+ }
291
+ })];
292
+ const DetailPanelActionContent = props => [(() => {
293
+ var _el$39 = _$getNextElement(_tmpl$15);
294
+ _$insert(_el$39, () => props.leading);
295
+ return _el$39;
296
+ })(), (() => {
297
+ var _el$40 = _$getNextElement(_tmpl$17),
298
+ _el$41 = _el$40.firstChild,
299
+ _el$43 = _el$41.nextSibling,
300
+ [_el$44, _co$9] = _$getNextMarker(_el$43.nextSibling);
301
+ _$insert(_el$41, () => props.title);
302
+ _$insert(_el$40, _$createComponent(Show, {
247
303
  get when() {
248
304
  return props.description;
249
305
  },
250
306
  get children() {
251
- var _el$39 = _$getNextElement(_tmpl$13);
252
- _$insert(_el$39, () => props.description);
253
- return _el$39;
307
+ var _el$42 = _$getNextElement(_tmpl$16);
308
+ _$insert(_el$42, () => props.description);
309
+ return _el$42;
254
310
  }
255
- }), _el$41, _co$9);
256
- return _el$37;
311
+ }), _el$44, _co$9);
312
+ return _el$40;
257
313
  })(), _$createComponent(Show, {
258
314
  get when() {
259
315
  return props.trailing;
260
316
  },
261
317
  get children() {
262
- var _el$42 = _$getNextElement(_tmpl$15);
263
- _$insert(_el$42, () => props.trailing);
264
- return _el$42;
318
+ var _el$45 = _$getNextElement(_tmpl$18);
319
+ _$insert(_el$45, () => props.trailing);
320
+ return _el$45;
265
321
  }
266
322
  })];
267
323
  const DetailPanelAction = props => {
268
- const [local, rest] = splitProps(props, ["class", "description", "href", "leading", "menuItems", "menuLabel", "secondaryAction", "title", "trailing"]);
324
+ const [local, rest] = splitProps(props, ["class", "current", "description", "href", "leading", "menuItems", "menuLabel", "secondaryAction", "title", "trailing", "wrap"]);
269
325
  const className = classNames("k2b-detail-panel__action", local.class);
270
326
  const content = () => _$createComponent(DetailPanelActionContent, {
271
327
  get title() {
@@ -288,6 +344,15 @@ const DetailPanelAction = props => {
288
344
  get fallback() {
289
345
  return _$createComponent(Button, _$mergeProps(rest, {
290
346
  "class": className,
347
+ get ["aria-current"]() {
348
+ return local.current ? "true" : undefined;
349
+ },
350
+ get ["data-current"]() {
351
+ return local.current ? "true" : undefined;
352
+ },
353
+ get ["data-wrap"]() {
354
+ return local.wrap ? "true" : undefined;
355
+ },
291
356
  variant: "ghost",
292
357
  size: "sm",
293
358
  get children() {
@@ -301,6 +366,15 @@ const DetailPanelAction = props => {
301
366
  return local.href;
302
367
  },
303
368
  "class": className,
369
+ get ["aria-current"]() {
370
+ return local.current ? "location" : undefined;
371
+ },
372
+ get ["data-current"]() {
373
+ return local.current ? "true" : undefined;
374
+ },
375
+ get ["data-wrap"]() {
376
+ return local.wrap ? "true" : undefined;
377
+ },
304
378
  variant: "ghost",
305
379
  size: "sm",
306
380
  get children() {
@@ -317,15 +391,15 @@ const DetailPanelAction = props => {
317
391
  return action();
318
392
  },
319
393
  get children() {
320
- var _el$43 = _$getNextElement(_tmpl$17),
321
- _el$45 = _el$43.firstChild,
322
- [_el$46, _co$0] = _$getNextMarker(_el$45.nextSibling),
323
- _el$47 = _el$46.nextSibling,
324
- [_el$48, _co$1] = _$getNextMarker(_el$47.nextSibling),
325
- _el$49 = _el$48.nextSibling,
326
- [_el$50, _co$10] = _$getNextMarker(_el$49.nextSibling);
327
- _$insert(_el$43, action, _el$46, _co$0);
328
- _$insert(_el$43, _$createComponent(Show, {
394
+ var _el$46 = _$getNextElement(_tmpl$20),
395
+ _el$48 = _el$46.firstChild,
396
+ [_el$49, _co$0] = _$getNextMarker(_el$48.nextSibling),
397
+ _el$50 = _el$49.nextSibling,
398
+ [_el$51, _co$1] = _$getNextMarker(_el$50.nextSibling),
399
+ _el$52 = _el$51.nextSibling,
400
+ [_el$53, _co$10] = _$getNextMarker(_el$52.nextSibling);
401
+ _$insert(_el$46, action, _el$49, _co$0);
402
+ _$insert(_el$46, _$createComponent(Show, {
329
403
  get when() {
330
404
  return local.secondaryAction;
331
405
  },
@@ -341,13 +415,13 @@ const DetailPanelAction = props => {
341
415
  },
342
416
  onClick: () => secondary().onClick(),
343
417
  get children() {
344
- var _el$51 = _$getNextElement(_tmpl$18);
345
- _$effect(() => _$className(_el$51, secondary().icon));
346
- return _el$51;
418
+ var _el$54 = _$getNextElement(_tmpl$21);
419
+ _$effect(() => _$className(_el$54, secondary().icon));
420
+ return _el$54;
347
421
  }
348
422
  })
349
- }), _el$48, _co$1);
350
- _$insert(_el$43, _$createComponent(Show, {
423
+ }), _el$51, _co$1);
424
+ _$insert(_el$46, _$createComponent(Show, {
351
425
  get when() {
352
426
  return local.menuItems?.length;
353
427
  },
@@ -371,14 +445,14 @@ const DetailPanelAction = props => {
371
445
  },
372
446
  "class": "k2b-detail-panel__action-menu-trigger",
373
447
  get children() {
374
- return _$getNextElement(_tmpl$16);
448
+ return _$getNextElement(_tmpl$19);
375
449
  }
376
450
  });
377
451
  }
378
452
  });
379
453
  }
380
- }), _el$50, _co$10);
381
- return _el$43;
454
+ }), _el$53, _co$10);
455
+ return _el$46;
382
456
  }
383
457
  });
384
458
  };
@@ -415,92 +489,101 @@ const DetailPanelSection = props => {
415
489
  },
416
490
  get fallback() {
417
491
  return (() => {
418
- var _el$77 = _$getNextElement(_tmpl$29),
419
- _el$78 = _el$77.firstChild,
420
- _el$86 = _el$78.firstChild,
421
- [_el$87, _co$17] = _$getNextMarker(_el$86.nextSibling),
422
- _el$79 = _el$87.nextSibling,
423
- _el$80 = _el$79.firstChild,
424
- _el$82 = _el$80.nextSibling,
425
- [_el$83, _co$16] = _$getNextMarker(_el$82.nextSibling),
426
- _el$88 = _el$79.nextSibling,
427
- [_el$89, _co$18] = _$getNextMarker(_el$88.nextSibling),
428
- _el$90 = _el$89.nextSibling,
429
- [_el$91, _co$19] = _$getNextMarker(_el$90.nextSibling),
430
- _el$93 = _el$78.nextSibling,
431
- [_el$94, _co$20] = _$getNextMarker(_el$93.nextSibling);
432
- _$setAttribute(_el$77, "aria-labelledby", headingId);
433
- _$insert(_el$78, _$createComponent(DetailPanelSectionIcon, {
492
+ var _el$82 = _$getNextElement(_tmpl$30),
493
+ _el$83 = _el$82.firstChild,
494
+ _el$93 = _el$83.firstChild,
495
+ [_el$94, _co$19] = _$getNextMarker(_el$93.nextSibling),
496
+ _el$84 = _el$94.nextSibling,
497
+ _el$85 = _el$84.firstChild,
498
+ _el$86 = _el$85.firstChild,
499
+ _el$87 = _el$86.nextSibling,
500
+ [_el$88, _co$17] = _$getNextMarker(_el$87.nextSibling),
501
+ _el$90 = _el$85.nextSibling,
502
+ [_el$91, _co$18] = _$getNextMarker(_el$90.nextSibling),
503
+ _el$95 = _el$84.nextSibling,
504
+ [_el$96, _co$20] = _$getNextMarker(_el$95.nextSibling),
505
+ _el$98 = _el$83.nextSibling,
506
+ [_el$99, _co$21] = _$getNextMarker(_el$98.nextSibling);
507
+ _$setAttribute(_el$82, "aria-labelledby", headingId);
508
+ _$insert(_el$83, _$createComponent(DetailPanelSectionIcon, {
434
509
  get icon() {
435
510
  return props.icon;
436
511
  },
437
512
  get tone() {
438
513
  return props.tone;
439
514
  }
440
- }), _el$87, _co$17);
441
- _$setAttribute(_el$80, "id", headingId);
442
- _$insert(_el$80, () => props.title);
443
- _$insert(_el$79, _$createComponent(Show, {
444
- get when() {
445
- return props.description;
515
+ }), _el$94, _co$19);
516
+ _$setAttribute(_el$86, "id", headingId);
517
+ _$insert(_el$86, () => props.title);
518
+ _$insert(_el$85, _$createComponent(SectionTitleMeta, {
519
+ get count() {
520
+ return props.count;
446
521
  },
447
- get children() {
448
- var _el$81 = _$getNextElement(_tmpl$23);
449
- _$insert(_el$81, () => props.description);
450
- return _el$81;
522
+ get meta() {
523
+ return props.meta;
451
524
  }
452
- }), _el$83, _co$16);
453
- _$insert(_el$78, _$createComponent(Show, {
525
+ }), _el$88, _co$17);
526
+ _$insert(_el$84, _$createComponent(Show, {
454
527
  get when() {
455
- return props.meta;
528
+ return props.description;
456
529
  },
457
530
  get children() {
458
- var _el$84 = _$getNextElement(_tmpl$24);
459
- _$insert(_el$84, () => props.meta);
460
- return _el$84;
531
+ var _el$89 = _$getNextElement(_tmpl$25);
532
+ _$insert(_el$89, () => props.description);
533
+ return _el$89;
461
534
  }
462
- }), _el$89, _co$18);
463
- _$insert(_el$78, _$createComponent(Show, {
535
+ }), _el$91, _co$18);
536
+ _$insert(_el$83, _$createComponent(Show, {
464
537
  get when() {
465
538
  return props.actions;
466
539
  },
467
540
  get children() {
468
- var _el$85 = _$getNextElement(_tmpl$27);
469
- _$insert(_el$85, () => props.actions);
470
- return _el$85;
541
+ var _el$92 = _$getNextElement(_tmpl$28);
542
+ _$insert(_el$92, () => props.actions);
543
+ return _el$92;
471
544
  }
472
- }), _el$91, _co$19);
473
- _$insert(_el$77, _$createComponent(Show, {
545
+ }), _el$96, _co$20);
546
+ _$insert(_el$82, _$createComponent(Show, {
474
547
  get when() {
475
548
  return resolved();
476
549
  },
477
550
  get children() {
478
- var _el$92 = _$getNextElement(_tmpl$28);
479
- _$insert(_el$92, resolved);
480
- return _el$92;
551
+ var _el$97 = _$getNextElement(_tmpl$29);
552
+ _$insert(_el$97, resolved);
553
+ return _el$97;
481
554
  }
482
- }), _el$94, _co$20);
483
- _$effect(() => _$className(_el$77, className()));
484
- return _el$77;
555
+ }), _el$99, _co$21);
556
+ _$effect(_p$ => {
557
+ var _v$15 = className(),
558
+ _v$16 = props.icon ? "true" : undefined;
559
+ _v$15 !== _p$.e && _$className(_el$82, _p$.e = _v$15);
560
+ _v$16 !== _p$.t && _$setAttribute(_el$82, "data-icon", _p$.t = _v$16);
561
+ return _p$;
562
+ }, {
563
+ e: undefined,
564
+ t: undefined
565
+ });
566
+ return _el$82;
485
567
  })();
486
568
  },
487
569
  get children() {
488
- var _el$52 = _$getNextElement(_tmpl$26),
489
- _el$53 = _el$52.firstChild,
490
- _el$61 = _el$53.nextSibling,
491
- _el$62 = _el$61.firstChild,
492
- _el$70 = _el$62.firstChild,
493
- [_el$71, _co$13] = _$getNextMarker(_el$70.nextSibling),
494
- _el$63 = _el$71.nextSibling,
495
- _el$64 = _el$63.firstChild,
496
- _el$66 = _el$64.nextSibling,
497
- [_el$67, _co$12] = _$getNextMarker(_el$66.nextSibling),
498
- _el$72 = _el$63.nextSibling,
499
- [_el$73, _co$14] = _$getNextMarker(_el$72.nextSibling),
500
- _el$74 = _el$73.nextSibling,
501
- [_el$75, _co$15] = _$getNextMarker(_el$74.nextSibling),
502
- _el$76 = _el$61.nextSibling;
503
- _$insert(_el$53, _$createComponent(Button, {
570
+ var _el$55 = _$getNextElement(_tmpl$27),
571
+ _el$56 = _el$55.firstChild,
572
+ _el$66 = _el$56.nextSibling,
573
+ _el$67 = _el$66.firstChild,
574
+ _el$77 = _el$67.firstChild,
575
+ [_el$78, _co$15] = _$getNextMarker(_el$77.nextSibling),
576
+ _el$68 = _el$78.nextSibling,
577
+ _el$69 = _el$68.firstChild,
578
+ _el$70 = _el$69.firstChild,
579
+ _el$71 = _el$70.nextSibling,
580
+ [_el$72, _co$13] = _$getNextMarker(_el$71.nextSibling),
581
+ _el$74 = _el$69.nextSibling,
582
+ [_el$75, _co$14] = _$getNextMarker(_el$74.nextSibling),
583
+ _el$79 = _el$68.nextSibling,
584
+ [_el$80, _co$16] = _$getNextMarker(_el$79.nextSibling),
585
+ _el$81 = _el$66.nextSibling;
586
+ _$insert(_el$56, _$createComponent(Button, {
504
587
  ref(r$) {
505
588
  var _ref$2 = expand;
506
589
  typeof _ref$2 === "function" ? _ref$2(r$) : expand = r$;
@@ -522,66 +605,66 @@ const DetailPanelSection = props => {
522
605
  return props.tone;
523
606
  }
524
607
  }), (() => {
525
- var _el$54 = _$getNextElement(_tmpl$20),
526
- _el$55 = _el$54.firstChild,
527
- _el$57 = _el$55.nextSibling,
528
- [_el$58, _co$11] = _$getNextMarker(_el$57.nextSibling);
529
- _$setAttribute(_el$55, "id", `${headingId}-closed`);
530
- _$insert(_el$55, () => props.title);
531
- _$insert(_el$54, _$createComponent(Show, {
608
+ var _el$57 = _$getNextElement(_tmpl$23),
609
+ _el$58 = _el$57.firstChild,
610
+ _el$59 = _el$58.firstChild,
611
+ _el$60 = _el$59.nextSibling,
612
+ [_el$61, _co$11] = _$getNextMarker(_el$60.nextSibling),
613
+ _el$63 = _el$58.nextSibling,
614
+ [_el$64, _co$12] = _$getNextMarker(_el$63.nextSibling);
615
+ _$setAttribute(_el$59, "id", `${headingId}-closed`);
616
+ _$insert(_el$59, () => props.title);
617
+ _$insert(_el$58, _$createComponent(SectionTitleMeta, {
618
+ get count() {
619
+ return props.count;
620
+ },
621
+ get meta() {
622
+ return props.meta;
623
+ }
624
+ }), _el$61, _co$11);
625
+ _$insert(_el$57, _$createComponent(Show, {
532
626
  get when() {
533
627
  return props.description;
534
628
  },
535
629
  get children() {
536
- var _el$56 = _$getNextElement(_tmpl$19);
537
- _$insert(_el$56, () => props.description);
538
- return _el$56;
630
+ var _el$62 = _$getNextElement(_tmpl$22);
631
+ _$insert(_el$62, () => props.description);
632
+ return _el$62;
539
633
  }
540
- }), _el$58, _co$11);
541
- return _el$54;
542
- })(), _$createComponent(Show, {
543
- get when() {
544
- return props.meta;
545
- },
546
- get children() {
547
- var _el$59 = _$getNextElement(_tmpl$21);
548
- _$insert(_el$59, () => props.meta);
549
- return _el$59;
550
- }
551
- }), _$getNextElement(_tmpl$22)];
634
+ }), _el$64, _co$12);
635
+ return _el$57;
636
+ })(), _$getNextElement(_tmpl$24)];
552
637
  }
553
638
  }));
554
- _$insert(_el$62, _$createComponent(DetailPanelSectionIcon, {
639
+ _$insert(_el$67, _$createComponent(DetailPanelSectionIcon, {
555
640
  get icon() {
556
641
  return props.icon;
557
642
  },
558
643
  get tone() {
559
644
  return props.tone;
560
645
  }
561
- }), _el$71, _co$13);
562
- _$setAttribute(_el$64, "id", headingId);
563
- _$insert(_el$64, () => props.title);
564
- _$insert(_el$63, _$createComponent(Show, {
565
- get when() {
566
- return props.description;
646
+ }), _el$78, _co$15);
647
+ _$setAttribute(_el$70, "id", headingId);
648
+ _$insert(_el$70, () => props.title);
649
+ _$insert(_el$69, _$createComponent(SectionTitleMeta, {
650
+ get count() {
651
+ return props.count;
567
652
  },
568
- get children() {
569
- var _el$65 = _$getNextElement(_tmpl$23);
570
- _$insert(_el$65, () => props.description);
571
- return _el$65;
653
+ get meta() {
654
+ return props.meta;
572
655
  }
573
- }), _el$67, _co$12);
574
- _$insert(_el$62, _$createComponent(Show, {
656
+ }), _el$72, _co$13);
657
+ _$insert(_el$68, _$createComponent(Show, {
575
658
  get when() {
576
- return props.meta;
659
+ return props.description;
577
660
  },
578
661
  get children() {
579
- var _el$68 = _$getNextElement(_tmpl$24);
580
- _$insert(_el$68, () => props.meta);
581
- return _el$68;
662
+ var _el$73 = _$getNextElement(_tmpl$25);
663
+ _$insert(_el$73, () => props.description);
664
+ return _el$73;
582
665
  }
583
- }), _el$73, _co$14);
584
- _$insert(_el$62, _$createComponent(Button, {
666
+ }), _el$75, _co$14);
667
+ _$insert(_el$67, _$createComponent(Button, {
585
668
  ref(r$) {
586
669
  var _ref$3 = collapse;
587
670
  typeof _ref$3 === "function" ? _ref$3(r$) : collapse = r$;
@@ -597,26 +680,28 @@ const DetailPanelSection = props => {
597
680
  "aria-controls": bodyId,
598
681
  onClick: () => toggle(false),
599
682
  get children() {
600
- return _$getNextElement(_tmpl$25);
683
+ return _$getNextElement(_tmpl$26);
601
684
  }
602
- }), _el$75, _co$15);
685
+ }), _el$80, _co$16);
603
686
  var _ref$4 = body;
604
- typeof _ref$4 === "function" ? _$use(_ref$4, _el$76) : body = _el$76;
605
- _$setAttribute(_el$76, "id", bodyId);
606
- _$insert(_el$76, () => props.children);
687
+ typeof _ref$4 === "function" ? _$use(_ref$4, _el$81) : body = _el$81;
688
+ _$setAttribute(_el$81, "id", bodyId);
689
+ _$insert(_el$81, () => props.children);
607
690
  _$effect(_p$ => {
608
- var _v$8 = className(),
609
- _v$9 = open() ? headingId : `${headingId}-closed`,
610
- _v$0 = open(),
611
- _v$1 = open(),
612
- _v$10 = !open(),
613
- _v$11 = !open();
614
- _v$8 !== _p$.e && _$className(_el$52, _p$.e = _v$8);
615
- _v$9 !== _p$.t && _$setAttribute(_el$52, "aria-labelledby", _p$.t = _v$9);
616
- _v$0 !== _p$.a && _$setAttribute(_el$52, "data-open", _p$.a = _v$0);
617
- _v$1 !== _p$.o && _$setProperty(_el$53, "hidden", _p$.o = _v$1);
618
- _v$10 !== _p$.i && _$setProperty(_el$61, "hidden", _p$.i = _v$10);
619
- _v$11 !== _p$.n && _$setProperty(_el$76, "hidden", _p$.n = _v$11);
691
+ var _v$0 = className(),
692
+ _v$1 = open() ? headingId : `${headingId}-closed`,
693
+ _v$10 = open(),
694
+ _v$11 = props.icon ? "true" : undefined,
695
+ _v$12 = open(),
696
+ _v$13 = !open(),
697
+ _v$14 = !open();
698
+ _v$0 !== _p$.e && _$className(_el$55, _p$.e = _v$0);
699
+ _v$1 !== _p$.t && _$setAttribute(_el$55, "aria-labelledby", _p$.t = _v$1);
700
+ _v$10 !== _p$.a && _$setAttribute(_el$55, "data-open", _p$.a = _v$10);
701
+ _v$11 !== _p$.o && _$setAttribute(_el$55, "data-icon", _p$.o = _v$11);
702
+ _v$12 !== _p$.i && _$setProperty(_el$56, "hidden", _p$.i = _v$12);
703
+ _v$13 !== _p$.n && _$setProperty(_el$66, "hidden", _p$.n = _v$13);
704
+ _v$14 !== _p$.s && _$setProperty(_el$81, "hidden", _p$.s = _v$14);
620
705
  return _p$;
621
706
  }, {
622
707
  e: undefined,
@@ -624,17 +709,18 @@ const DetailPanelSection = props => {
624
709
  a: undefined,
625
710
  o: undefined,
626
711
  i: undefined,
627
- n: undefined
712
+ n: undefined,
713
+ s: undefined
628
714
  });
629
- return _el$52;
715
+ return _el$55;
630
716
  }
631
717
  });
632
718
  };
633
719
  const DetailPanel = props => (() => {
634
- var _el$95 = _$getNextElement(_tmpl$9);
635
- _$insert(_el$95, () => props.children);
636
- _$effect(() => _$className(_el$95, classNames("k2b-detail-panel", props.class)));
637
- return _el$95;
720
+ var _el$100 = _$getNextElement(_tmpl$9);
721
+ _$insert(_el$100, () => props.children);
722
+ _$effect(() => _$className(_el$100, classNames("k2b-detail-panel", props.class)));
723
+ return _el$100;
638
724
  })();
639
725
  DetailPanel.Header = DetailPanelHeader;
640
726
  DetailPanel.Body = DetailPanelBody;