@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
@@ -15,48 +15,50 @@ import { spread as _$spread } from "solid-js/web";
15
15
  import { mergeProps as _$mergeProps } from "solid-js/web";
16
16
  import { memo as _$memo } from "solid-js/web";
17
17
  var _tmpl$ = /*#__PURE__*/_$template(`<h2>`),
18
- _tmpl$2 = /*#__PURE__*/_$template(`<span class=k2b-discussion__count>`),
19
- _tmpl$3 = /*#__PURE__*/_$template(`<div class=k2b-discussion__actions>`),
20
- _tmpl$4 = /*#__PURE__*/_$template(`<section><header class=k2b-discussion__header><!$><!/><!$><!/><!$><!/><!$><!/></header><div class=k2b-discussion__body>`),
21
- _tmpl$5 = /*#__PURE__*/_$template(`<span class=k2b-discussion__icon aria-hidden=true><i>`),
22
- _tmpl$6 = /*#__PURE__*/_$template(`<h3>`),
23
- _tmpl$7 = /*#__PURE__*/_$template(`<i class="ti ti-send"aria-hidden=true>`),
24
- _tmpl$8 = /*#__PURE__*/_$template(`<form><div class=k2b-discussion__composer-field data-has-inset-action=true><!$><!/><div class=k2b-discussion__composer-inset-action></div></div><!$><!/><!$><!/>`),
25
- _tmpl$9 = /*#__PURE__*/_$template(`<p class=k2b-discussion__status role=alert>`),
26
- _tmpl$0 = /*#__PURE__*/_$template(`<footer>`),
27
- _tmpl$1 = /*#__PURE__*/_$template(`<p class=k2b-discussion__status role=status><i class="ti ti-loader-2 k2b-spin"aria-hidden=true></i> <!$><!/>`),
18
+ _tmpl$2 = /*#__PURE__*/_$template(`<div class=k2b-discussion__actions>`),
19
+ _tmpl$3 = /*#__PURE__*/_$template(`<section><header class=k2b-discussion__header><!$><!/><!$><!/><!$><!/><!$><!/></header><div class=k2b-discussion__body>`),
20
+ _tmpl$4 = /*#__PURE__*/_$template(`<span class=k2b-discussion__icon aria-hidden=true><i>`),
21
+ _tmpl$5 = /*#__PURE__*/_$template(`<h3>`),
22
+ _tmpl$6 = /*#__PURE__*/_$template(`<i class="ti ti-send"aria-hidden=true>`),
23
+ _tmpl$7 = /*#__PURE__*/_$template(`<form><div class=k2b-discussion__composer-field data-has-inset-action=true><!$><!/><div class=k2b-discussion__composer-inset-action></div></div><!$><!/><!$><!/>`),
24
+ _tmpl$8 = /*#__PURE__*/_$template(`<p class=k2b-discussion__status role=alert>`),
25
+ _tmpl$9 = /*#__PURE__*/_$template(`<footer>`),
26
+ _tmpl$0 = /*#__PURE__*/_$template(`<p class=k2b-discussion__status role=status><i class="ti ti-loader-2 k2b-spin"aria-hidden=true></i> <!$><!/>`),
27
+ _tmpl$1 = /*#__PURE__*/_$template(`<button type=button class=k2b-discussion__fold><i aria-hidden=true></i><!$><!/>`),
28
28
  _tmpl$10 = /*#__PURE__*/_$template(`<button type=button class=k2b-discussion__load-more><i aria-hidden=true></i><!$><!/>`),
29
- _tmpl$11 = /*#__PURE__*/_$template(`<div><div class=k2b-discussion__sentinel aria-hidden=true></div><!$><!/><!$><!/><!$><!/><!$><!/><ol class=k2b-discussion__list>`),
29
+ _tmpl$11 = /*#__PURE__*/_$template(`<div><div class=k2b-discussion__sentinel aria-hidden=true></div><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/><ol class=k2b-discussion__list>`),
30
30
  _tmpl$12 = /*#__PURE__*/_$template(`<button type=button>`),
31
31
  _tmpl$13 = /*#__PURE__*/_$template(`<div class=k2b-discussion__status role=alert><span></span><!$><!/>`),
32
32
  _tmpl$14 = /*#__PURE__*/_$template(`<div class=k2b-discussion__status role=alert><span></span><button type=button>`),
33
33
  _tmpl$15 = /*#__PURE__*/_$template(`<div class=k2b-discussion__avatar>`),
34
- _tmpl$16 = /*#__PURE__*/_$template(`<span class=k2b-discussion__timestamp>`),
35
- _tmpl$17 = /*#__PURE__*/_$template(`<span class=k2b-discussion__meta>`),
36
- _tmpl$18 = /*#__PURE__*/_$template(`<div class=k2b-discussion__item-actions>`),
34
+ _tmpl$16 = /*#__PURE__*/_$template(`<span class=k2b-discussion__meta>`),
35
+ _tmpl$17 = /*#__PURE__*/_$template(`<div class=k2b-discussion__item-actions>`),
36
+ _tmpl$18 = /*#__PURE__*/_$template(`<span class=k2b-discussion__timestamp>`),
37
37
  _tmpl$19 = /*#__PURE__*/_$template(`<div class=k2b-discussion__reply-context>`),
38
38
  _tmpl$20 = /*#__PURE__*/_$template(`<li><!$><!/><div class=k2b-discussion__entry><header><strong></strong><!$><!/><!$><!/><!$><!/></header><!$><!/><div class=k2b-discussion__content>`);
39
- import { createEffect, createSignal, createUniqueId, onCleanup, onMount, Show, splitProps } from "solid-js";
39
+ import { children, createEffect, createSignal, createUniqueId, onCleanup, onMount, Show, splitProps } from "solid-js";
40
40
  import { Button, IconButton } from "../actions/Button";
41
41
  import { useChatMessages } from "../chat/chat-messages";
42
42
  import { MarkdownEditor } from "../inputs/markdown/MarkdownEditor";
43
43
  import { useUiMessages } from "../intl/messages";
44
+ import { DetailPanelCount } from "./DetailPanel";
45
+ import { useDetailPanelMessages } from "./detail-panel-messages";
44
46
  const classNames = (base, extra) => extra ? `${base} ${extra}` : base;
45
47
  const DiscussionRoot = props => {
46
48
  const headingId = `k2b-discussion-${createUniqueId()}`;
47
49
  const [local, sectionProps] = splitProps(props, ["label", "children", "icon", "count", "actions", "as", "surface", "class"]);
48
50
  return (() => {
49
- var _el$ = _$getNextElement(_tmpl$4),
51
+ var _el$ = _$getNextElement(_tmpl$3),
50
52
  _el$2 = _el$.firstChild,
51
- _el$6 = _el$2.firstChild,
52
- [_el$7, _co$] = _$getNextMarker(_el$6.nextSibling),
53
- _el$8 = _el$7.nextSibling,
54
- [_el$9, _co$2] = _$getNextMarker(_el$8.nextSibling),
55
- _el$0 = _el$9.nextSibling,
56
- [_el$1, _co$3] = _$getNextMarker(_el$0.nextSibling),
57
- _el$10 = _el$1.nextSibling,
58
- [_el$11, _co$4] = _$getNextMarker(_el$10.nextSibling),
59
- _el$12 = _el$2.nextSibling;
53
+ _el$5 = _el$2.firstChild,
54
+ [_el$6, _co$] = _$getNextMarker(_el$5.nextSibling),
55
+ _el$7 = _el$6.nextSibling,
56
+ [_el$8, _co$2] = _$getNextMarker(_el$7.nextSibling),
57
+ _el$9 = _el$8.nextSibling,
58
+ [_el$0, _co$3] = _$getNextMarker(_el$9.nextSibling),
59
+ _el$1 = _el$0.nextSibling,
60
+ [_el$10, _co$4] = _$getNextMarker(_el$1.nextSibling),
61
+ _el$11 = _el$2.nextSibling;
60
62
  _$spread(_el$, _$mergeProps(sectionProps, {
61
63
  get ["class"]() {
62
64
  return classNames("k2b-discussion", local.class);
@@ -71,22 +73,22 @@ const DiscussionRoot = props => {
71
73
  return _$memo(() => local.icon !== false)() && local.icon;
72
74
  },
73
75
  children: icon => (() => {
74
- var _el$13 = _$getNextElement(_tmpl$5),
75
- _el$14 = _el$13.firstChild;
76
- _$effect(() => _$className(_el$14, icon()));
77
- return _el$13;
76
+ var _el$12 = _$getNextElement(_tmpl$4),
77
+ _el$13 = _el$12.firstChild;
78
+ _$effect(() => _$className(_el$13, icon()));
79
+ return _el$12;
78
80
  })()
79
- }), _el$7, _co$);
81
+ }), _el$6, _co$);
80
82
  _$insert(_el$2, _$createComponent(Show, {
81
83
  get when() {
82
84
  return local.as === "h2";
83
85
  },
84
86
  get fallback() {
85
87
  return (() => {
86
- var _el$15 = _$getNextElement(_tmpl$6);
87
- _$setAttribute(_el$15, "id", headingId);
88
- _$insert(_el$15, () => local.label);
89
- return _el$15;
88
+ var _el$14 = _$getNextElement(_tmpl$5);
89
+ _$setAttribute(_el$14, "id", headingId);
90
+ _$insert(_el$14, () => local.label);
91
+ return _el$14;
90
92
  })();
91
93
  },
92
94
  get children() {
@@ -95,28 +97,30 @@ const DiscussionRoot = props => {
95
97
  _$insert(_el$3, () => local.label);
96
98
  return _el$3;
97
99
  }
98
- }), _el$9, _co$2);
100
+ }), _el$8, _co$2);
99
101
  _$insert(_el$2, _$createComponent(Show, {
100
102
  get when() {
101
103
  return local.count !== undefined;
102
104
  },
103
105
  get children() {
104
- var _el$4 = _$getNextElement(_tmpl$2);
105
- _$insert(_el$4, () => local.count);
106
- return _el$4;
106
+ return _$createComponent(DetailPanelCount, {
107
+ get count() {
108
+ return local.count ?? 0;
109
+ }
110
+ });
107
111
  }
108
- }), _el$1, _co$3);
112
+ }), _el$0, _co$3);
109
113
  _$insert(_el$2, _$createComponent(Show, {
110
114
  get when() {
111
115
  return local.actions !== undefined;
112
116
  },
113
117
  get children() {
114
- var _el$5 = _$getNextElement(_tmpl$3);
115
- _$insert(_el$5, () => local.actions);
116
- return _el$5;
118
+ var _el$4 = _$getNextElement(_tmpl$2);
119
+ _$insert(_el$4, () => local.actions);
120
+ return _el$4;
117
121
  }
118
- }), _el$11, _co$4);
119
- _$insert(_el$12, () => local.children);
122
+ }), _el$10, _co$4);
123
+ _$insert(_el$11, () => local.children);
120
124
  _$runHydrationEvents();
121
125
  return _el$;
122
126
  })();
@@ -143,16 +147,16 @@ const DiscussionComposer = props => {
143
147
  }
144
148
  };
145
149
  return (() => {
146
- var _el$16 = _$getNextElement(_tmpl$8),
147
- _el$17 = _el$16.firstChild,
148
- _el$20 = _el$17.firstChild,
149
- [_el$21, _co$5] = _$getNextMarker(_el$20.nextSibling),
150
- _el$18 = _el$21.nextSibling,
151
- _el$22 = _el$17.nextSibling,
152
- [_el$23, _co$6] = _$getNextMarker(_el$22.nextSibling),
153
- _el$24 = _el$23.nextSibling,
154
- [_el$25, _co$7] = _$getNextMarker(_el$24.nextSibling);
155
- _$spread(_el$16, _$mergeProps(formProps, {
150
+ var _el$15 = _$getNextElement(_tmpl$7),
151
+ _el$16 = _el$15.firstChild,
152
+ _el$19 = _el$16.firstChild,
153
+ [_el$20, _co$5] = _$getNextMarker(_el$19.nextSibling),
154
+ _el$17 = _el$20.nextSibling,
155
+ _el$21 = _el$16.nextSibling,
156
+ [_el$22, _co$6] = _$getNextMarker(_el$21.nextSibling),
157
+ _el$23 = _el$22.nextSibling,
158
+ [_el$24, _co$7] = _$getNextMarker(_el$23.nextSibling);
159
+ _$spread(_el$15, _$mergeProps(formProps, {
156
160
  get ["class"]() {
157
161
  return classNames("k2b-discussion__composer", local.class);
158
162
  },
@@ -161,7 +165,7 @@ const DiscussionComposer = props => {
161
165
  void submit();
162
166
  }
163
167
  }), false, true);
164
- _$insert(_el$17, _$createComponent(MarkdownEditor, {
168
+ _$insert(_el$16, _$createComponent(MarkdownEditor, {
165
169
  get ["aria-label"]() {
166
170
  return local.label;
167
171
  },
@@ -186,8 +190,8 @@ const DiscussionComposer = props => {
186
190
  return submitError() !== null;
187
191
  },
188
192
  onSubmit: () => void submit()
189
- }), _el$21, _co$5);
190
- _$insert(_el$18, _$createComponent(IconButton, {
193
+ }), _el$20, _co$5);
194
+ _$insert(_el$17, _$createComponent(IconButton, {
191
195
  type: "submit",
192
196
  get label() {
193
197
  return local.submitLabel ?? chatMessages().postMessage;
@@ -201,26 +205,26 @@ const DiscussionComposer = props => {
201
205
  return submitting() || !message().trim();
202
206
  },
203
207
  get children() {
204
- return _$getNextElement(_tmpl$7);
208
+ return _$getNextElement(_tmpl$6);
205
209
  }
206
210
  }));
207
- _$insert(_el$16, _$createComponent(Show, {
211
+ _$insert(_el$15, _$createComponent(Show, {
208
212
  get when() {
209
213
  return submitError();
210
214
  },
211
215
  children: error => (() => {
212
- var _el$26 = _$getNextElement(_tmpl$9);
213
- _$insert(_el$26, error);
214
- return _el$26;
216
+ var _el$25 = _$getNextElement(_tmpl$8);
217
+ _$insert(_el$25, error);
218
+ return _el$25;
215
219
  })()
216
- }), _el$23, _co$6);
217
- _$insert(_el$16, _$createComponent(Show, {
220
+ }), _el$22, _co$6);
221
+ _$insert(_el$15, _$createComponent(Show, {
218
222
  get when() {
219
223
  return local.onCancel;
220
224
  },
221
225
  children: onCancel => (() => {
222
- var _el$27 = _$getNextElement(_tmpl$0);
223
- _$insert(_el$27, _$createComponent(Button, {
226
+ var _el$26 = _$getNextElement(_tmpl$9);
227
+ _$insert(_el$26, _$createComponent(Button, {
224
228
  type: "button",
225
229
  variant: "ghost",
226
230
  size: "xs",
@@ -234,11 +238,11 @@ const DiscussionComposer = props => {
234
238
  return local.cancelLabel ?? messages().cancel;
235
239
  }
236
240
  }));
237
- return _el$27;
241
+ return _el$26;
238
242
  })()
239
- }), _el$25, _co$7);
243
+ }), _el$24, _co$7);
240
244
  _$runHydrationEvents();
241
- return _el$16;
245
+ return _el$15;
242
246
  })();
243
247
  };
244
248
  const scrollOwner = element => {
@@ -253,6 +257,18 @@ const scrollOwner = element => {
253
257
  const DiscussionList = props => {
254
258
  const messages = useUiMessages();
255
259
  const chatMessages = useChatMessages();
260
+ const foldMessages = useDetailPanelMessages();
261
+ const [internalExpanded, setInternalExpanded] = createSignal(false);
262
+ const expanded = () => props.expanded ?? internalExpanded();
263
+ const setExpanded = next => {
264
+ if (props.expanded === undefined) setInternalExpanded(next);
265
+ props.onExpandedChange?.(next);
266
+ };
267
+ const resolved = children(() => props.children);
268
+ const entries = () => resolved.toArray();
269
+ const hidden = () => props.fold !== undefined && !expanded() ? Math.max(0, entries().length - props.fold) : 0;
270
+ const folded = () => props.fold !== undefined && entries().length > props.fold;
271
+ const visible = () => hidden() > 0 ? entries().slice(hidden()) : entries();
256
272
  const [loadingMoreInternally, setLoadingMoreInternally] = createSignal(false);
257
273
  const [loadMoreError, setLoadMoreError] = createSignal(null);
258
274
  const [sentinelVisible, setSentinelVisible] = createSignal(false);
@@ -263,9 +279,9 @@ const DiscussionList = props => {
263
279
  let adjustmentFrame;
264
280
  let active = true;
265
281
  const loadingMore = () => Boolean(props.loadingMore || loadingMoreInternally());
266
- const canLoadMore = () => Boolean(!props.loading && !props.error && !loadMoreError() && props.hasMore && props.onLoadMore && !loadingMore());
282
+ const canLoadMore = () => Boolean(!props.loading && !props.error && !loadMoreError() && hidden() === 0 && props.hasMore && props.onLoadMore && !loadingMore());
267
283
  const loadMore = async (retry = false) => {
268
- if (props.loading || props.error || !retry && loadMoreError() || !props.onLoadMore || !props.hasMore || loadingMore()) return false;
284
+ if (props.loading || props.error || !retry && loadMoreError() || hidden() > 0 || !props.onLoadMore || !props.hasMore || loadingMore()) return false;
269
285
  const owner = listRef ? scrollOwner(listRef) : null;
270
286
  const previousScrollHeight = owner?.scrollHeight ?? 0;
271
287
  setLoadMoreError(null);
@@ -312,136 +328,168 @@ const DiscussionList = props => {
312
328
  if (adjustmentFrame !== undefined) cancelAnimationFrame(adjustmentFrame);
313
329
  });
314
330
  return (() => {
315
- var _el$28 = _$getNextElement(_tmpl$11),
316
- _el$29 = _el$28.firstChild,
317
- _el$40 = _el$29.nextSibling,
318
- [_el$41, _co$0] = _$getNextMarker(_el$40.nextSibling),
319
- _el$42 = _el$41.nextSibling,
320
- [_el$43, _co$1] = _$getNextMarker(_el$42.nextSibling),
321
- _el$44 = _el$43.nextSibling,
322
- [_el$45, _co$10] = _$getNextMarker(_el$44.nextSibling),
323
- _el$46 = _el$45.nextSibling,
324
- [_el$47, _co$11] = _$getNextMarker(_el$46.nextSibling),
325
- _el$39 = _el$47.nextSibling;
331
+ var _el$27 = _$getNextElement(_tmpl$11),
332
+ _el$28 = _el$27.firstChild,
333
+ _el$43 = _el$28.nextSibling,
334
+ [_el$44, _co$1] = _$getNextMarker(_el$43.nextSibling),
335
+ _el$45 = _el$44.nextSibling,
336
+ [_el$46, _co$10] = _$getNextMarker(_el$45.nextSibling),
337
+ _el$47 = _el$46.nextSibling,
338
+ [_el$48, _co$11] = _$getNextMarker(_el$47.nextSibling),
339
+ _el$49 = _el$48.nextSibling,
340
+ [_el$50, _co$12] = _$getNextMarker(_el$49.nextSibling),
341
+ _el$51 = _el$50.nextSibling,
342
+ [_el$52, _co$13] = _$getNextMarker(_el$51.nextSibling),
343
+ _el$42 = _el$52.nextSibling;
326
344
  var _ref$ = sentinelRef;
327
- typeof _ref$ === "function" ? _$use(_ref$, _el$29) : sentinelRef = _el$29;
328
- _$insert(_el$28, _$createComponent(Show, {
345
+ typeof _ref$ === "function" ? _$use(_ref$, _el$28) : sentinelRef = _el$28;
346
+ _$insert(_el$27, _$createComponent(Show, {
329
347
  get when() {
330
348
  return props.loading;
331
349
  },
332
350
  get children() {
333
- var _el$30 = _$getNextElement(_tmpl$1),
334
- _el$31 = _el$30.firstChild,
351
+ var _el$29 = _$getNextElement(_tmpl$0),
352
+ _el$30 = _el$29.firstChild,
353
+ _el$31 = _el$30.nextSibling,
335
354
  _el$32 = _el$31.nextSibling,
336
- _el$33 = _el$32.nextSibling,
337
- [_el$34, _co$8] = _$getNextMarker(_el$33.nextSibling);
338
- _$insert(_el$30, () => props.loadingLabel ?? chatMessages().loadingMessages, _el$34, _co$8);
339
- return _el$30;
355
+ [_el$33, _co$8] = _$getNextMarker(_el$32.nextSibling);
356
+ _$insert(_el$29, () => props.loadingLabel ?? chatMessages().loadingMessages, _el$33, _co$8);
357
+ return _el$29;
340
358
  }
341
- }), _el$41, _co$0);
342
- _$insert(_el$28, _$createComponent(Show, {
359
+ }), _el$44, _co$1);
360
+ _$insert(_el$27, _$createComponent(Show, {
343
361
  get when() {
344
362
  return props.error;
345
363
  },
346
364
  children: error => (() => {
347
- var _el$48 = _$getNextElement(_tmpl$13),
348
- _el$49 = _el$48.firstChild,
349
- _el$51 = _el$49.nextSibling,
350
- [_el$52, _co$12] = _$getNextMarker(_el$51.nextSibling);
351
- _$insert(_el$49, error);
352
- _$insert(_el$48, _$createComponent(Show, {
365
+ var _el$53 = _$getNextElement(_tmpl$13),
366
+ _el$54 = _el$53.firstChild,
367
+ _el$56 = _el$54.nextSibling,
368
+ [_el$57, _co$14] = _$getNextMarker(_el$56.nextSibling);
369
+ _$insert(_el$54, error);
370
+ _$insert(_el$53, _$createComponent(Show, {
353
371
  get when() {
354
372
  return props.onRetry;
355
373
  },
356
374
  get children() {
357
- var _el$50 = _$getNextElement(_tmpl$12);
358
- _$addEventListener(_el$50, "click", props.onRetry, true);
359
- _$insert(_el$50, () => messages().retry);
375
+ var _el$55 = _$getNextElement(_tmpl$12);
376
+ _$addEventListener(_el$55, "click", props.onRetry, true);
377
+ _$insert(_el$55, () => messages().retry);
360
378
  _$runHydrationEvents();
361
- return _el$50;
379
+ return _el$55;
362
380
  }
363
- }), _el$52, _co$12);
364
- return _el$48;
381
+ }), _el$57, _co$14);
382
+ return _el$53;
365
383
  })()
366
- }), _el$43, _co$1);
367
- _$insert(_el$28, _$createComponent(Show, {
384
+ }), _el$46, _co$10);
385
+ _$insert(_el$27, _$createComponent(Show, {
368
386
  get when() {
369
387
  return loadMoreError();
370
388
  },
371
389
  children: error => (() => {
372
- var _el$53 = _$getNextElement(_tmpl$14),
373
- _el$54 = _el$53.firstChild,
374
- _el$55 = _el$54.nextSibling;
375
- _$insert(_el$54, error);
376
- _el$55.$$click = () => void loadMore(true);
377
- _$insert(_el$55, () => messages().retry);
390
+ var _el$58 = _$getNextElement(_tmpl$14),
391
+ _el$59 = _el$58.firstChild,
392
+ _el$60 = _el$59.nextSibling;
393
+ _$insert(_el$59, error);
394
+ _el$60.$$click = () => void loadMore(true);
395
+ _$insert(_el$60, () => messages().retry);
378
396
  _$runHydrationEvents();
379
- return _el$53;
397
+ return _el$58;
380
398
  })()
381
- }), _el$45, _co$10);
382
- _$insert(_el$28, _$createComponent(Show, {
399
+ }), _el$48, _co$11);
400
+ _$insert(_el$27, _$createComponent(Show, {
401
+ get when() {
402
+ return _$memo(() => !!folded())() && !props.loading;
403
+ },
404
+ get children() {
405
+ var _el$34 = _$getNextElement(_tmpl$1),
406
+ _el$35 = _el$34.firstChild,
407
+ _el$36 = _el$35.nextSibling,
408
+ [_el$37, _co$9] = _$getNextMarker(_el$36.nextSibling);
409
+ _el$34.$$click = () => setExpanded(hidden() > 0);
410
+ _$insert(_el$34, (() => {
411
+ var _c$ = _$memo(() => hidden() > 0);
412
+ return () => _c$() ? foldMessages().showOlder({
413
+ count: hidden()
414
+ }) : foldMessages().showLess;
415
+ })(), _el$37, _co$9);
416
+ _$effect(_p$ => {
417
+ var _v$ = hidden() === 0,
418
+ _v$2 = `ti ${hidden() > 0 ? "ti-chevron-down" : "ti-chevron-up"}`;
419
+ _v$ !== _p$.e && _$setAttribute(_el$34, "aria-expanded", _p$.e = _v$);
420
+ _v$2 !== _p$.t && _$className(_el$35, _p$.t = _v$2);
421
+ return _p$;
422
+ }, {
423
+ e: undefined,
424
+ t: undefined
425
+ });
426
+ _$runHydrationEvents();
427
+ return _el$34;
428
+ }
429
+ }), _el$50, _co$12);
430
+ _$insert(_el$27, _$createComponent(Show, {
383
431
  get when() {
384
432
  return _$memo(() => !!(!props.loading && !props.error && !loadMoreError()))() && (canLoadMore() || loadingMore());
385
433
  },
386
434
  get children() {
387
- var _el$35 = _$getNextElement(_tmpl$10),
388
- _el$36 = _el$35.firstChild,
389
- _el$37 = _el$36.nextSibling,
390
- [_el$38, _co$9] = _$getNextMarker(_el$37.nextSibling);
391
- _el$35.$$click = () => void loadMore();
392
- _$insert(_el$35, (() => {
393
- var _c$ = _$memo(() => !!loadingMore());
394
- return () => _c$() ? props.loadingLabel ?? chatMessages().loadingMessages : props.loadMoreLabel ?? chatMessages().loadEarlier;
395
- })(), _el$38, _co$9);
435
+ var _el$38 = _$getNextElement(_tmpl$10),
436
+ _el$39 = _el$38.firstChild,
437
+ _el$40 = _el$39.nextSibling,
438
+ [_el$41, _co$0] = _$getNextMarker(_el$40.nextSibling);
439
+ _el$38.$$click = () => void loadMore();
440
+ _$insert(_el$38, (() => {
441
+ var _c$2 = _$memo(() => !!loadingMore());
442
+ return () => _c$2() ? props.loadingLabel ?? chatMessages().loadingMessages : props.loadMoreLabel ?? chatMessages().loadEarlier;
443
+ })(), _el$41, _co$0);
396
444
  _$effect(_p$ => {
397
- var _v$ = loadingMore(),
398
- _v$2 = `ti ${loadingMore() ? "ti-loader-2 k2b-spin" : "ti-history"}`;
399
- _v$ !== _p$.e && _$setProperty(_el$35, "disabled", _p$.e = _v$);
400
- _v$2 !== _p$.t && _$className(_el$36, _p$.t = _v$2);
445
+ var _v$3 = loadingMore(),
446
+ _v$4 = `ti ${loadingMore() ? "ti-loader-2 k2b-spin" : "ti-history"}`;
447
+ _v$3 !== _p$.e && _$setProperty(_el$38, "disabled", _p$.e = _v$3);
448
+ _v$4 !== _p$.t && _$className(_el$39, _p$.t = _v$4);
401
449
  return _p$;
402
450
  }, {
403
451
  e: undefined,
404
452
  t: undefined
405
453
  });
406
454
  _$runHydrationEvents();
407
- return _el$35;
455
+ return _el$38;
408
456
  }
409
- }), _el$47, _co$11);
457
+ }), _el$52, _co$13);
410
458
  var _ref$2 = listRef;
411
- typeof _ref$2 === "function" ? _$use(_ref$2, _el$39) : listRef = _el$39;
412
- _$insert(_el$39, () => props.children);
459
+ typeof _ref$2 === "function" ? _$use(_ref$2, _el$42) : listRef = _el$42;
460
+ _$insert(_el$42, visible);
413
461
  _$effect(_p$ => {
414
- var _v$3 = classNames("k2b-discussion__list-region", props.class),
415
- _v$4 = props.loading || loadingMore() ? "true" : undefined;
416
- _v$3 !== _p$.e && _$className(_el$28, _p$.e = _v$3);
417
- _v$4 !== _p$.t && _$setAttribute(_el$28, "aria-busy", _p$.t = _v$4);
462
+ var _v$5 = classNames("k2b-discussion__list-region", props.class),
463
+ _v$6 = props.loading || loadingMore() ? "true" : undefined;
464
+ _v$5 !== _p$.e && _$className(_el$27, _p$.e = _v$5);
465
+ _v$6 !== _p$.t && _$setAttribute(_el$27, "aria-busy", _p$.t = _v$6);
418
466
  return _p$;
419
467
  }, {
420
468
  e: undefined,
421
469
  t: undefined
422
470
  });
423
- return _el$28;
471
+ return _el$27;
424
472
  })();
425
473
  };
426
474
  const DiscussionItem = props => {
427
475
  const [local, itemProps] = splitProps(props, ["author", "children", "avatar", "timestamp", "meta", "replyContext", "actions", "actionVisibility", "class"]);
428
476
  return (() => {
429
- var _el$56 = _$getNextElement(_tmpl$20),
430
- _el$74 = _el$56.firstChild,
431
- [_el$75, _co$17] = _$getNextMarker(_el$74.nextSibling),
432
- _el$58 = _el$75.nextSibling,
433
- _el$59 = _el$58.firstChild,
434
- _el$60 = _el$59.firstChild,
435
- _el$64 = _el$60.nextSibling,
436
- [_el$65, _co$13] = _$getNextMarker(_el$64.nextSibling),
437
- _el$66 = _el$65.nextSibling,
438
- [_el$67, _co$14] = _$getNextMarker(_el$66.nextSibling),
439
- _el$68 = _el$67.nextSibling,
440
- [_el$69, _co$15] = _$getNextMarker(_el$68.nextSibling),
441
- _el$72 = _el$59.nextSibling,
442
- [_el$73, _co$16] = _$getNextMarker(_el$72.nextSibling),
443
- _el$71 = _el$73.nextSibling;
444
- _$spread(_el$56, _$mergeProps(itemProps, {
477
+ var _el$61 = _$getNextElement(_tmpl$20),
478
+ _el$79 = _el$61.firstChild,
479
+ [_el$80, _co$19] = _$getNextMarker(_el$79.nextSibling),
480
+ _el$63 = _el$80.nextSibling,
481
+ _el$64 = _el$63.firstChild,
482
+ _el$65 = _el$64.firstChild,
483
+ _el$69 = _el$65.nextSibling,
484
+ [_el$70, _co$15] = _$getNextMarker(_el$69.nextSibling),
485
+ _el$71 = _el$70.nextSibling,
486
+ [_el$72, _co$16] = _$getNextMarker(_el$71.nextSibling),
487
+ _el$73 = _el$72.nextSibling,
488
+ [_el$74, _co$17] = _$getNextMarker(_el$73.nextSibling),
489
+ _el$77 = _el$64.nextSibling,
490
+ [_el$78, _co$18] = _$getNextMarker(_el$77.nextSibling),
491
+ _el$76 = _el$78.nextSibling;
492
+ _$spread(_el$61, _$mergeProps(itemProps, {
445
493
  get ["class"]() {
446
494
  return classNames("k2b-discussion__item", local.class);
447
495
  },
@@ -449,61 +497,61 @@ const DiscussionItem = props => {
449
497
  return local.avatar !== undefined ? "true" : undefined;
450
498
  }
451
499
  }), false, true);
452
- _$insert(_el$56, _$createComponent(Show, {
500
+ _$insert(_el$61, _$createComponent(Show, {
453
501
  get when() {
454
502
  return local.avatar !== undefined;
455
503
  },
456
504
  get children() {
457
- var _el$57 = _$getNextElement(_tmpl$15);
458
- _$insert(_el$57, () => local.avatar);
459
- return _el$57;
505
+ var _el$62 = _$getNextElement(_tmpl$15);
506
+ _$insert(_el$62, () => local.avatar);
507
+ return _el$62;
460
508
  }
461
- }), _el$75, _co$17);
462
- _$insert(_el$60, () => local.author);
463
- _$insert(_el$59, _$createComponent(Show, {
509
+ }), _el$80, _co$19);
510
+ _$insert(_el$65, () => local.author);
511
+ _$insert(_el$64, _$createComponent(Show, {
464
512
  get when() {
465
- return local.timestamp !== undefined;
513
+ return local.meta !== undefined;
466
514
  },
467
515
  get children() {
468
- var _el$61 = _$getNextElement(_tmpl$16);
469
- _$insert(_el$61, () => local.timestamp);
470
- return _el$61;
516
+ var _el$66 = _$getNextElement(_tmpl$16);
517
+ _$insert(_el$66, () => local.meta);
518
+ return _el$66;
471
519
  }
472
- }), _el$65, _co$13);
473
- _$insert(_el$59, _$createComponent(Show, {
520
+ }), _el$70, _co$15);
521
+ _$insert(_el$64, _$createComponent(Show, {
474
522
  get when() {
475
- return local.meta !== undefined;
523
+ return local.actions !== undefined;
476
524
  },
477
525
  get children() {
478
- var _el$62 = _$getNextElement(_tmpl$17);
479
- _$insert(_el$62, () => local.meta);
480
- return _el$62;
526
+ var _el$67 = _$getNextElement(_tmpl$17);
527
+ _$insert(_el$67, () => local.actions);
528
+ _$effect(() => _$setAttribute(_el$67, "data-visibility", local.actionVisibility ?? "progressive"));
529
+ return _el$67;
481
530
  }
482
- }), _el$67, _co$14);
483
- _$insert(_el$59, _$createComponent(Show, {
531
+ }), _el$72, _co$16);
532
+ _$insert(_el$64, _$createComponent(Show, {
484
533
  get when() {
485
- return local.actions !== undefined;
534
+ return local.timestamp !== undefined;
486
535
  },
487
536
  get children() {
488
- var _el$63 = _$getNextElement(_tmpl$18);
489
- _$insert(_el$63, () => local.actions);
490
- _$effect(() => _$setAttribute(_el$63, "data-visibility", local.actionVisibility ?? "progressive"));
491
- return _el$63;
537
+ var _el$68 = _$getNextElement(_tmpl$18);
538
+ _$insert(_el$68, () => local.timestamp);
539
+ return _el$68;
492
540
  }
493
- }), _el$69, _co$15);
494
- _$insert(_el$58, _$createComponent(Show, {
541
+ }), _el$74, _co$17);
542
+ _$insert(_el$63, _$createComponent(Show, {
495
543
  get when() {
496
544
  return local.replyContext !== undefined;
497
545
  },
498
546
  get children() {
499
- var _el$70 = _$getNextElement(_tmpl$19);
500
- _$insert(_el$70, () => local.replyContext);
501
- return _el$70;
547
+ var _el$75 = _$getNextElement(_tmpl$19);
548
+ _$insert(_el$75, () => local.replyContext);
549
+ return _el$75;
502
550
  }
503
- }), _el$73, _co$16);
504
- _$insert(_el$71, () => local.children);
551
+ }), _el$78, _co$18);
552
+ _$insert(_el$76, () => local.children);
505
553
  _$runHydrationEvents();
506
- return _el$56;
554
+ return _el$61;
507
555
  })();
508
556
  };
509
557
  const Discussion = DiscussionRoot;