@k2b/ui 0.32.0 → 0.34.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.
- package/dist/base.css +14 -1
- package/dist/browser/actions/ContextMenu.js +13 -0
- package/dist/browser/actions/ContextMenu.js.map +1 -1
- package/dist/browser/actions/Dropdown.js +173 -102
- package/dist/browser/actions/Dropdown.js.map +1 -1
- package/dist/browser/actions/FilterChip.js +113 -56
- package/dist/browser/actions/FilterChip.js.map +1 -1
- package/dist/browser/actions/SelectionToolbar.js +129 -0
- package/dist/browser/actions/SelectionToolbar.js.map +1 -0
- package/dist/browser/actions/filter-messages.js +26 -2
- package/dist/browser/actions/filter-messages.js.map +1 -1
- package/dist/browser/actions/index.js +1 -0
- package/dist/browser/actions/index.js.map +1 -1
- package/dist/browser/actions/menu-rows.js +23 -3
- package/dist/browser/actions/menu-rows.js.map +1 -1
- package/dist/browser/actions/menu-sheet.js +2 -7
- package/dist/browser/actions/menu-sheet.js.map +1 -1
- package/dist/browser/charts.js +6 -0
- package/dist/browser/charts.js.map +1 -0
- package/dist/browser/chat/ChatComposer.js +616 -421
- package/dist/browser/chat/ChatComposer.js.map +1 -1
- package/dist/browser/chat/chat-messages.js +18 -0
- package/dist/browser/chat/chat-messages.js.map +1 -1
- package/dist/browser/chat/composer-document.js +19 -0
- package/dist/browser/chat/composer-document.js.map +1 -1
- package/dist/browser/chat/index.js.map +1 -1
- package/dist/browser/content/Calendar.js +39 -29
- package/dist/browser/content/Calendar.js.map +1 -1
- package/dist/browser/content/CalendarDayView.js +159 -165
- package/dist/browser/content/CalendarDayView.js.map +1 -1
- package/dist/browser/content/Chart.js +8 -0
- package/dist/browser/content/Chart.js.map +1 -1
- package/dist/browser/content/FileGrid.js +231 -9
- package/dist/browser/content/FileGrid.js.map +1 -1
- package/dist/browser/content/FileTypeIcon.js +15 -0
- package/dist/browser/content/FileTypeIcon.js.map +1 -1
- package/dist/browser/content/FileView.js +11 -4
- package/dist/browser/content/FileView.js.map +1 -1
- package/dist/browser/content/MessageRow.js +627 -343
- package/dist/browser/content/MessageRow.js.map +1 -1
- package/dist/browser/content/ReactionBar.js +20 -1
- package/dist/browser/content/ReactionBar.js.map +1 -1
- package/dist/browser/content/calendar-day-scroll.js +4 -3
- package/dist/browser/content/calendar-day-scroll.js.map +1 -1
- package/dist/browser/content/chart-bar.js +476 -0
- package/dist/browser/content/chart-bar.js.map +1 -0
- package/dist/browser/content/file-list-messages.js +52 -0
- package/dist/browser/content/file-list-messages.js.map +1 -0
- package/dist/browser/content/index.js +2 -2
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/feedback/Tooltip.js +31 -14
- package/dist/browser/feedback/Tooltip.js.map +1 -1
- package/dist/browser/feedback/dialog-core.js +6 -0
- package/dist/browser/feedback/dialog-core.js.map +1 -1
- package/dist/browser/inputs/ChoiceList.js +178 -0
- package/dist/browser/inputs/ChoiceList.js.map +1 -0
- package/dist/browser/inputs/ChoiceSlider.js +314 -0
- package/dist/browser/inputs/ChoiceSlider.js.map +1 -0
- package/dist/browser/inputs/ChoiceTiles.js +135 -0
- package/dist/browser/inputs/ChoiceTiles.js.map +1 -0
- package/dist/browser/inputs/ColorChoices.js +120 -0
- package/dist/browser/inputs/ColorChoices.js.map +1 -0
- package/dist/browser/inputs/QrScanner.js +95 -13
- package/dist/browser/inputs/QrScanner.js.map +1 -1
- package/dist/browser/inputs/TextInput.js +19 -14
- package/dist/browser/inputs/TextInput.js.map +1 -1
- package/dist/browser/inputs/index.js +4 -0
- package/dist/browser/inputs/index.js.map +1 -1
- package/dist/browser/inputs/qr-messages.js +2 -0
- package/dist/browser/inputs/qr-messages.js.map +1 -1
- package/dist/browser/internal/radio-keys.js +13 -0
- package/dist/browser/internal/radio-keys.js.map +1 -0
- package/dist/browser/intl/shortcut-messages.js +4 -0
- package/dist/browser/intl/shortcut-messages.js.map +1 -1
- package/dist/browser/intl/shortcut.js +4 -0
- package/dist/browser/intl/shortcut.js.map +1 -1
- package/dist/browser/layout/AnchoredPopover.js +180 -0
- package/dist/browser/layout/AnchoredPopover.js.map +1 -0
- package/dist/browser/layout/AppWorkspace.js +684 -532
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/DetailPanel.js +443 -333
- package/dist/browser/layout/DetailPanel.js.map +1 -1
- package/dist/browser/layout/MobileShell.js +231 -42
- package/dist/browser/layout/MobileShell.js.map +1 -1
- package/dist/browser/layout/Settings.js +283 -175
- package/dist/browser/layout/Settings.js.map +1 -1
- package/dist/browser/layout/SidebarRailHint.js +79 -0
- package/dist/browser/layout/SidebarRailHint.js.map +1 -0
- package/dist/browser/layout/SidebarSwitcher.js +79 -66
- package/dist/browser/layout/SidebarSwitcher.js.map +1 -1
- package/dist/browser/layout/TabBar.js +18 -4
- package/dist/browser/layout/TabBar.js.map +1 -1
- package/dist/browser/layout/app-workspace-controller.js +11 -4
- package/dist/browser/layout/app-workspace-controller.js.map +1 -1
- package/dist/browser/layout/detail-panel-messages.js +4 -2
- package/dist/browser/layout/detail-panel-messages.js.map +1 -1
- package/dist/browser/layout/index.js +3 -1
- package/dist/browser/layout/index.js.map +1 -1
- package/dist/browser/layout/scroll-fade.js +32 -5
- package/dist/browser/layout/scroll-fade.js.map +1 -1
- package/dist/browser/layout/settings-messages.js +26 -2
- package/dist/browser/layout/settings-messages.js.map +1 -1
- package/dist/browser/surfaces/Avatar.js +2 -14
- package/dist/browser/surfaces/Avatar.js.map +1 -1
- package/dist/browser/surfaces/DotStrip.js +70 -0
- package/dist/browser/surfaces/DotStrip.js.map +1 -0
- package/dist/browser/surfaces/NoticeCard.js +46 -30
- package/dist/browser/surfaces/NoticeCard.js.map +1 -1
- package/dist/browser/surfaces/ProgressRing.js +3 -0
- package/dist/browser/surfaces/ProgressRing.js.map +1 -1
- package/dist/browser/surfaces/ResourceCard.js +125 -68
- package/dist/browser/surfaces/ResourceCard.js.map +1 -1
- package/dist/browser/surfaces/index.js +2 -0
- package/dist/browser/surfaces/index.js.map +1 -1
- package/dist/browser/surfaces/person-color.js +18 -0
- package/dist/browser/surfaces/person-color.js.map +1 -0
- package/dist/browser/surfaces/resource-messages.js +8 -4
- package/dist/browser/surfaces/resource-messages.js.map +1 -1
- package/dist/browser/widgets/Widget.js +3 -2
- package/dist/browser/widgets/Widget.js.map +1 -1
- package/dist/ssr/actions/ContextMenu.js +9 -0
- package/dist/ssr/actions/ContextMenu.js.map +1 -1
- package/dist/ssr/actions/Dropdown.js +65 -31
- package/dist/ssr/actions/Dropdown.js.map +1 -1
- package/dist/ssr/actions/FilterChip.js +67 -16
- package/dist/ssr/actions/FilterChip.js.map +1 -1
- package/dist/ssr/actions/SelectionToolbar.js +104 -0
- package/dist/ssr/actions/SelectionToolbar.js.map +1 -0
- package/dist/ssr/actions/filter-messages.js +26 -2
- package/dist/ssr/actions/filter-messages.js.map +1 -1
- package/dist/ssr/actions/index.js +1 -0
- package/dist/ssr/actions/index.js.map +1 -1
- package/dist/ssr/actions/menu-rows.js +23 -3
- package/dist/ssr/actions/menu-rows.js.map +1 -1
- package/dist/ssr/actions/menu-sheet.js +2 -7
- package/dist/ssr/actions/menu-sheet.js.map +1 -1
- package/dist/ssr/charts.js +6 -0
- package/dist/ssr/charts.js.map +1 -0
- package/dist/ssr/chat/ChatComposer.js +184 -76
- package/dist/ssr/chat/ChatComposer.js.map +1 -1
- package/dist/ssr/chat/chat-messages.js +18 -0
- package/dist/ssr/chat/chat-messages.js.map +1 -1
- package/dist/ssr/chat/composer-document.js +19 -0
- package/dist/ssr/chat/composer-document.js.map +1 -1
- package/dist/ssr/chat/index.js.map +1 -1
- package/dist/ssr/content/Calendar.js +40 -31
- package/dist/ssr/content/Calendar.js.map +1 -1
- package/dist/ssr/content/CalendarDayView.js +40 -48
- package/dist/ssr/content/CalendarDayView.js.map +1 -1
- package/dist/ssr/content/Chart.js +8 -0
- package/dist/ssr/content/Chart.js.map +1 -1
- package/dist/ssr/content/FileGrid.js +132 -5
- package/dist/ssr/content/FileGrid.js.map +1 -1
- package/dist/ssr/content/FileTypeIcon.js +15 -0
- package/dist/ssr/content/FileTypeIcon.js.map +1 -1
- package/dist/ssr/content/FileView.js +11 -4
- package/dist/ssr/content/FileView.js.map +1 -1
- package/dist/ssr/content/MessageRow.js +274 -91
- package/dist/ssr/content/MessageRow.js.map +1 -1
- package/dist/ssr/content/ReactionBar.js +20 -1
- package/dist/ssr/content/ReactionBar.js.map +1 -1
- package/dist/ssr/content/calendar-day-scroll.js +4 -3
- package/dist/ssr/content/calendar-day-scroll.js.map +1 -1
- package/dist/ssr/content/chart-bar.js +476 -0
- package/dist/ssr/content/chart-bar.js.map +1 -0
- package/dist/ssr/content/file-list-messages.js +52 -0
- package/dist/ssr/content/file-list-messages.js.map +1 -0
- package/dist/ssr/content/index.js +2 -2
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/feedback/Tooltip.js +31 -14
- package/dist/ssr/feedback/Tooltip.js.map +1 -1
- package/dist/ssr/feedback/dialog-core.js +6 -0
- package/dist/ssr/feedback/dialog-core.js.map +1 -1
- package/dist/ssr/inputs/ChoiceList.js +95 -0
- package/dist/ssr/inputs/ChoiceList.js.map +1 -0
- package/dist/ssr/inputs/ChoiceSlider.js +191 -0
- package/dist/ssr/inputs/ChoiceSlider.js.map +1 -0
- package/dist/ssr/inputs/ChoiceTiles.js +61 -0
- package/dist/ssr/inputs/ChoiceTiles.js.map +1 -0
- package/dist/ssr/inputs/ColorChoices.js +60 -0
- package/dist/ssr/inputs/ColorChoices.js.map +1 -0
- package/dist/ssr/inputs/QrScanner.js +89 -10
- package/dist/ssr/inputs/QrScanner.js.map +1 -1
- package/dist/ssr/inputs/TextInput.js +17 -2
- package/dist/ssr/inputs/TextInput.js.map +1 -1
- package/dist/ssr/inputs/index.js +4 -0
- package/dist/ssr/inputs/index.js.map +1 -1
- package/dist/ssr/inputs/qr-messages.js +2 -0
- package/dist/ssr/inputs/qr-messages.js.map +1 -1
- package/dist/ssr/internal/radio-keys.js +13 -0
- package/dist/ssr/internal/radio-keys.js.map +1 -0
- package/dist/ssr/intl/shortcut-messages.js +4 -0
- package/dist/ssr/intl/shortcut-messages.js.map +1 -1
- package/dist/ssr/intl/shortcut.js +4 -0
- package/dist/ssr/intl/shortcut.js.map +1 -1
- package/dist/ssr/layout/AnchoredPopover.js +142 -0
- package/dist/ssr/layout/AnchoredPopover.js.map +1 -0
- package/dist/ssr/layout/AppWorkspace.js +287 -141
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/DetailPanel.js +181 -108
- package/dist/ssr/layout/DetailPanel.js.map +1 -1
- package/dist/ssr/layout/MobileShell.js +118 -24
- package/dist/ssr/layout/MobileShell.js.map +1 -1
- package/dist/ssr/layout/Settings.js +122 -45
- package/dist/ssr/layout/Settings.js.map +1 -1
- package/dist/ssr/layout/SidebarRailHint.js +79 -0
- package/dist/ssr/layout/SidebarRailHint.js.map +1 -0
- package/dist/ssr/layout/SidebarSwitcher.js +13 -3
- package/dist/ssr/layout/SidebarSwitcher.js.map +1 -1
- package/dist/ssr/layout/TabBar.js +11 -3
- package/dist/ssr/layout/TabBar.js.map +1 -1
- package/dist/ssr/layout/app-workspace-controller.js +11 -4
- package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
- package/dist/ssr/layout/detail-panel-messages.js +4 -2
- package/dist/ssr/layout/detail-panel-messages.js.map +1 -1
- package/dist/ssr/layout/index.js +3 -1
- package/dist/ssr/layout/index.js.map +1 -1
- package/dist/ssr/layout/scroll-fade.js +32 -5
- package/dist/ssr/layout/scroll-fade.js.map +1 -1
- package/dist/ssr/layout/settings-messages.js +26 -2
- package/dist/ssr/layout/settings-messages.js.map +1 -1
- package/dist/ssr/surfaces/Avatar.js +2 -14
- package/dist/ssr/surfaces/Avatar.js.map +1 -1
- package/dist/ssr/surfaces/DotStrip.js +31 -0
- package/dist/ssr/surfaces/DotStrip.js.map +1 -0
- package/dist/ssr/surfaces/NoticeCard.js +21 -12
- package/dist/ssr/surfaces/NoticeCard.js.map +1 -1
- package/dist/ssr/surfaces/ProgressRing.js +3 -0
- package/dist/ssr/surfaces/ProgressRing.js.map +1 -1
- package/dist/ssr/surfaces/ResourceCard.js +40 -15
- package/dist/ssr/surfaces/ResourceCard.js.map +1 -1
- package/dist/ssr/surfaces/index.js +2 -0
- package/dist/ssr/surfaces/index.js.map +1 -1
- package/dist/ssr/surfaces/person-color.js +18 -0
- package/dist/ssr/surfaces/person-color.js.map +1 -0
- package/dist/ssr/surfaces/resource-messages.js +8 -4
- package/dist/ssr/surfaces/resource-messages.js.map +1 -1
- package/dist/ssr/widgets/Widget.js +3 -2
- package/dist/ssr/widgets/Widget.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/actions/ContextMenu.d.ts +5 -0
- package/dist/types/actions/Dropdown.d.ts +19 -0
- package/dist/types/actions/FilterChip.d.ts +11 -0
- package/dist/types/actions/SelectionToolbar.d.ts +38 -0
- package/dist/types/actions/filter-messages.d.ts +12 -0
- package/dist/types/actions/index.d.ts +2 -0
- package/dist/types/actions/menu-rows.d.ts +7 -2
- package/dist/types/charts.d.ts +5 -0
- package/dist/types/chat/ChatComposer.d.ts +28 -0
- package/dist/types/chat/chat-messages.d.ts +9 -0
- package/dist/types/chat/composer-document.d.ts +5 -0
- package/dist/types/chat/index.d.ts +1 -1
- package/dist/types/content/Calendar.d.ts +7 -0
- package/dist/types/content/Chart.d.ts +2 -1
- package/dist/types/content/FileGrid.d.ts +43 -3
- package/dist/types/content/FileTypeIcon.d.ts +10 -0
- package/dist/types/content/FileView.d.ts +5 -1
- package/dist/types/content/MessageRow.d.ts +66 -2
- package/dist/types/content/calendar-day-scroll.d.ts +2 -1
- package/dist/types/content/chart-bar.d.ts +60 -0
- package/dist/types/content/file-list-messages.d.ts +24 -0
- package/dist/types/content/index.d.ts +4 -4
- package/dist/types/feedback/Tooltip.d.ts +8 -2
- package/dist/types/feedback/dialog-core.d.ts +3 -0
- package/dist/types/inputs/ChoiceList.d.ts +28 -0
- package/dist/types/inputs/ChoiceSlider.d.ts +36 -0
- package/dist/types/inputs/ChoiceTiles.d.ts +25 -0
- package/dist/types/inputs/ColorChoices.d.ts +19 -0
- package/dist/types/inputs/index.d.ts +8 -0
- package/dist/types/inputs/qr-messages.d.ts +1 -0
- package/dist/types/internal/radio-keys.d.ts +5 -0
- package/dist/types/intl/shortcut-messages.d.ts +2 -0
- package/dist/types/layout/AnchoredPopover.d.ts +31 -0
- package/dist/types/layout/AppWorkspace.d.ts +12 -0
- package/dist/types/layout/DetailPanel.d.ts +17 -0
- package/dist/types/layout/MobileShell.d.ts +55 -5
- package/dist/types/layout/Settings.d.ts +22 -0
- package/dist/types/layout/SidebarRailHint.d.ts +26 -0
- package/dist/types/layout/TabBar.d.ts +5 -0
- package/dist/types/layout/detail-panel-messages.d.ts +1 -0
- package/dist/types/layout/index.d.ts +5 -3
- package/dist/types/layout/scroll-fade.d.ts +5 -0
- package/dist/types/layout/settings-messages.d.ts +12 -0
- package/dist/types/surfaces/DotStrip.d.ts +22 -0
- package/dist/types/surfaces/NoticeCard.d.ts +3 -0
- package/dist/types/surfaces/ProgressRing.d.ts +2 -1
- package/dist/types/surfaces/ResourceCard.d.ts +9 -0
- package/dist/types/surfaces/index.d.ts +4 -1
- package/dist/types/surfaces/person-color.d.ts +10 -0
- package/dist/types/surfaces/resource-messages.d.ts +2 -0
- package/dist/types/widgets/Widget.d.ts +3 -2
- package/package.json +7 -2
|
@@ -30,37 +30,43 @@ var _tmpl$ = /*#__PURE__*/_$template(`<span><strong>`),
|
|
|
30
30
|
_tmpl$13 = /*#__PURE__*/_$template(`<button class=k2b-chat-composer__command type=button role=option tabindex=-1><i aria-hidden=true></i><span class=k2b-chat-composer__command-text><strong></strong><!$><!/></span><!$><!/>`),
|
|
31
31
|
_tmpl$14 = /*#__PURE__*/_$template(`<b>`),
|
|
32
32
|
_tmpl$15 = /*#__PURE__*/_$template(`<small>`),
|
|
33
|
-
_tmpl$16 = /*#__PURE__*/_$template(`<
|
|
34
|
-
_tmpl$17 = /*#__PURE__*/_$template(`<
|
|
35
|
-
_tmpl$18 = /*#__PURE__*/_$template(`<div
|
|
36
|
-
_tmpl$19 = /*#__PURE__*/_$template(`<
|
|
37
|
-
_tmpl$20 = /*#__PURE__*/_$template(`<div role=status>`),
|
|
38
|
-
_tmpl$21 = /*#__PURE__*/_$template(`<div
|
|
39
|
-
_tmpl$22 = /*#__PURE__*/_$template(`<div
|
|
40
|
-
_tmpl$23 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
41
|
-
_tmpl$24 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
42
|
-
_tmpl$25 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
43
|
-
_tmpl$26 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
44
|
-
_tmpl$27 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
45
|
-
_tmpl$28 = /*#__PURE__*/_$template(`<
|
|
46
|
-
_tmpl$29 = /*#__PURE__*/_$template(`<
|
|
47
|
-
_tmpl$30 = /*#__PURE__*/_$template(`<
|
|
48
|
-
_tmpl$31 = /*#__PURE__*/_$template(`<
|
|
49
|
-
_tmpl$32 = /*#__PURE__*/_$template(`<
|
|
50
|
-
_tmpl$33 = /*#__PURE__*/_$template(`<
|
|
51
|
-
_tmpl$34 = /*#__PURE__*/_$template(`<
|
|
52
|
-
_tmpl$35 = /*#__PURE__*/_$template(`<
|
|
53
|
-
_tmpl$36 = /*#__PURE__*/_$template(`<
|
|
54
|
-
_tmpl$37 = /*#__PURE__*/_$template(`<
|
|
55
|
-
_tmpl$38 = /*#__PURE__*/_$template(`<
|
|
56
|
-
_tmpl$39 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
57
|
-
_tmpl$40 = /*#__PURE__*/_$template(`<
|
|
58
|
-
_tmpl$41 = /*#__PURE__*/_$template(`<button type=button class=k2b-
|
|
59
|
-
_tmpl$42 = /*#__PURE__*/_$template(`<
|
|
60
|
-
_tmpl$43 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
61
|
-
_tmpl$44 = /*#__PURE__*/_$template(`<
|
|
62
|
-
_tmpl$45 = /*#__PURE__*/_$template(`<div class=k2b-chat-
|
|
63
|
-
_tmpl$46 = /*#__PURE__*/_$template(`<
|
|
33
|
+
_tmpl$16 = /*#__PURE__*/_$template(`<span class=k2b-message-row__quote-author><span class=k2b-sr-only><!$><!/> </span><!$><!/>`),
|
|
34
|
+
_tmpl$17 = /*#__PURE__*/_$template(`<span class=k2b-message-row__quote-text>`),
|
|
35
|
+
_tmpl$18 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer-accessory><div class=k2b-chat-composer__commands role=listbox>`),
|
|
36
|
+
_tmpl$19 = /*#__PURE__*/_$template(`<label class=k2b-chat-composer__command-search><i class="ti ti-search"aria-hidden=true></i><input type=text role=combobox aria-autocomplete=list aria-expanded=true autocomplete=off autocapitalize=off>`),
|
|
37
|
+
_tmpl$20 = /*#__PURE__*/_$template(`<div role=status class=k2b-chat-composer__loading><i class="ti ti-loader-2 k2b-spin"aria-hidden=true></i><strong>`),
|
|
38
|
+
_tmpl$21 = /*#__PURE__*/_$template(`<div role=status><i class="ti ti-alert-circle"></i> <!$><!/>`),
|
|
39
|
+
_tmpl$22 = /*#__PURE__*/_$template(`<div role=status>`),
|
|
40
|
+
_tmpl$23 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer-accessory data-commands><!$><!/><div class=k2b-chat-composer__commands role=listbox><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/>`),
|
|
41
|
+
_tmpl$24 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer-slot><div></div><!$><!/><!$><!/><!$><!/>`),
|
|
42
|
+
_tmpl$25 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__hint aria-live=polite>`),
|
|
43
|
+
_tmpl$26 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__attachments role=list tabindex=0>`),
|
|
44
|
+
_tmpl$27 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__error role=alert><i class="ti ti-alert-circle"aria-hidden=true></i><!$><!/>`),
|
|
45
|
+
_tmpl$28 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__row><!$><!/><!$><!/><div class=k2b-chat-composer__field><!$><!/><div class=k2b-chat-composer__field-tools><!$><!/><!$><!/><!$><!/></div></div><!$><!/>`),
|
|
46
|
+
_tmpl$29 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer-shell><!$><!/><section role=group><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/></section><div class=k2b-sr-only role=status aria-live=polite></div><div class=k2b-chat-composer__status role=status><!$><!/><!$><!/>`),
|
|
47
|
+
_tmpl$30 = /*#__PURE__*/_$template(`<button type=button role=option tabindex=-1><span class=k2b-chat-composer__emoji-glyph aria-hidden=true></span><strong></strong><!$><!/>`),
|
|
48
|
+
_tmpl$31 = /*#__PURE__*/_$template(`<small>:<!$><!/>:`),
|
|
49
|
+
_tmpl$32 = /*#__PURE__*/_$template(`<button type=button role=option tabindex=-1><i aria-hidden=true></i><strong></strong><!$><!/>`),
|
|
50
|
+
_tmpl$33 = /*#__PURE__*/_$template(`<i class="ti ti-loader-2 k2b-spin"aria-hidden=true>`),
|
|
51
|
+
_tmpl$34 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__command-group role=group><div class=k2b-chat-composer__command-heading role=presentation><span></span><!$><!/></div><!$><!/><!$><!/>`),
|
|
52
|
+
_tmpl$35 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__command-placeholder aria-hidden=true><span></span><span><span></span><span>`),
|
|
53
|
+
_tmpl$36 = /*#__PURE__*/_$template(`<span class=k2b-chat-composer__hint-text>`),
|
|
54
|
+
_tmpl$37 = /*#__PURE__*/_$template(`<span class=k2b-chat-composer__dictation><i aria-hidden=true></i><span>`),
|
|
55
|
+
_tmpl$38 = /*#__PURE__*/_$template(`<button type=button class=k2b-chat-composer__hint-action>`),
|
|
56
|
+
_tmpl$39 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__reply><!$><!/><button type=button class="k2b-chat-composer__icon-action k2b-chat-composer__reply-cancel"><i class="ti ti-x"aria-hidden=true>`),
|
|
57
|
+
_tmpl$40 = /*#__PURE__*/_$template(`<div class=k2b-message-row__quote>`),
|
|
58
|
+
_tmpl$41 = /*#__PURE__*/_$template(`<button type=button class=k2b-message-row__quote>`),
|
|
59
|
+
_tmpl$42 = /*#__PURE__*/_$template(`<button type=button class=k2b-chat-composer__attachment-remove><i class="ti ti-x"aria-hidden=true>`),
|
|
60
|
+
_tmpl$43 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__attachment role=listitem><div class=k2b-chat-composer__attachment-content><!$><!/><!$><!/></div><!$><!/>`),
|
|
61
|
+
_tmpl$44 = /*#__PURE__*/_$template(`<img>`),
|
|
62
|
+
_tmpl$45 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__attachment-identity><!$><!/><!$><!/>`),
|
|
63
|
+
_tmpl$46 = /*#__PURE__*/_$template(`<a class=k2b-chat-composer__attachment-link target=_blank rel="noopener noreferrer"><!$><!/><!$><!/>`),
|
|
64
|
+
_tmpl$47 = /*#__PURE__*/_$template(`<button type=button class=k2b-chat-composer__attachment-action><!$><!/><!$><!/>`),
|
|
65
|
+
_tmpl$48 = /*#__PURE__*/_$template(`<footer class=k2b-chat-composer__footer>`),
|
|
66
|
+
_tmpl$49 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__tools><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/>`),
|
|
67
|
+
_tmpl$50 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__submit><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/>`),
|
|
68
|
+
_tmpl$51 = /*#__PURE__*/_$template(`<div class=k2b-chat-composer__status-line><i aria-hidden=true></i><span>`),
|
|
69
|
+
_tmpl$52 = /*#__PURE__*/_$template(`<span class=k2b-sr-only>`);
|
|
64
70
|
import { batch, children, createEffect, createMemo, createSignal, createUniqueId, For, Index, on, onCleanup, onMount, Show, untrack } from "solid-js";
|
|
65
71
|
import { Dropdown } from "../actions/Dropdown";
|
|
66
72
|
import { dialogHistorySettled, holdDialogHistory } from "../feedback/dialog-core";
|
|
@@ -79,7 +85,7 @@ import { ChatContextUsage as ContextUsage } from "./ChatPrimitives";
|
|
|
79
85
|
import { chatCommandKey, conversationEnterAction, executeChatAction, nextChatCommandIndex, reportChatFailure, runChatSubmission } from "./chat-behavior";
|
|
80
86
|
import { useChatMessages } from "./chat-messages";
|
|
81
87
|
import { chatCommandListModel, parseChatCommandQuery } from "./command-search";
|
|
82
|
-
import { chatCommandQuery, chatMentionSegments, reconcileChatMentions } from "./composer-document";
|
|
88
|
+
import { chatCommandQuery, chatMentionSegments, chatPeopleQuery, reconcileChatMentions } from "./composer-document";
|
|
83
89
|
const composerMaxInputHeight = 309;
|
|
84
90
|
const commandDoneMs = 3_000;
|
|
85
91
|
/** Emoji suggestions for a `:shortcode`, as many as fit the list without scrolling on a phone. */
|
|
@@ -105,6 +111,10 @@ const composerUndoBudgetChars = 1_000_000;
|
|
|
105
111
|
|
|
106
112
|
/** Passed as the third argument to `searchCommands`. */
|
|
107
113
|
|
|
114
|
+
/** A person `@` can mention: a member of the conversation, a person or an agent. */
|
|
115
|
+
|
|
116
|
+
/** Suggests people for `@`; the composer inserts the chosen one as a mention named "@Name". */
|
|
117
|
+
|
|
108
118
|
/** The row stays short: what a chat message needs. Other Markdown, typed by hand, keeps working. */
|
|
109
119
|
const formatTools = [{
|
|
110
120
|
id: "bold",
|
|
@@ -302,6 +312,32 @@ export function ChatComposer(props) {
|
|
|
302
312
|
return token && index ? suggestEmoji(index, token.query, emojiSuggestionLimit) : [];
|
|
303
313
|
});
|
|
304
314
|
const emojiOpen = () => emojiMatches().length > 0;
|
|
315
|
+
// People for `@name`: each change of the query asks again and gives up the previous question.
|
|
316
|
+
const peopleQuery = createMemo(() => !props.people || dismissed() || composing() ? null : chatPeopleQuery(props.value, caret(), selectionEnd(), mentions()));
|
|
317
|
+
// Results belong to the query they answer; while a newer query is asked, the older results show nothing to pick.
|
|
318
|
+
const [peopleResults, setPeopleResults] = createSignal();
|
|
319
|
+
const peopleMatches = () => {
|
|
320
|
+
const results = peopleResults();
|
|
321
|
+
return results && results.query === peopleQuery()?.query ? results.people : [];
|
|
322
|
+
};
|
|
323
|
+
const setPeopleMatches = (people, query = peopleQuery()?.query ?? "") => setPeopleResults({
|
|
324
|
+
query,
|
|
325
|
+
people
|
|
326
|
+
});
|
|
327
|
+
createEffect(on(() => [peopleQuery()?.start, peopleQuery()?.query], ([start, query]) => {
|
|
328
|
+
if (start === undefined || query === undefined || !props.people) {
|
|
329
|
+
setPeopleMatches([]);
|
|
330
|
+
return;
|
|
331
|
+
}
|
|
332
|
+
const abort = new AbortController();
|
|
333
|
+
onCleanup(() => abort.abort());
|
|
334
|
+
props.people.search(query, abort.signal).then(found => {
|
|
335
|
+
if (!abort.signal.aborted) setPeopleMatches(found.slice(0, 8), query);
|
|
336
|
+
}, () => {
|
|
337
|
+
if (!abort.signal.aborted) setPeopleMatches([], query);
|
|
338
|
+
});
|
|
339
|
+
}));
|
|
340
|
+
const peopleOpen = () => !emojiOpen() && Boolean(peopleQuery()) && peopleMatches().length > 0;
|
|
305
341
|
// From "+", the search field's text is the query of an empty token at the field's stored caret.
|
|
306
342
|
const caretCommandToken = createMemo(() => {
|
|
307
343
|
const search = addSearch();
|
|
@@ -396,7 +432,7 @@ export function ChatComposer(props) {
|
|
|
396
432
|
currentCommandQuery();
|
|
397
433
|
setCommandMoved(false);
|
|
398
434
|
});
|
|
399
|
-
const commandsOpen = () => Boolean(!emojiOpen() && commandQuery() && (localCommands().length || props.searchCommands || commandFallbackRow()));
|
|
435
|
+
const commandsOpen = () => Boolean(!emojiOpen() && !peopleOpen() && commandQuery() && (localCommands().length || props.searchCommands || commandFallbackRow()));
|
|
400
436
|
// Rows that arrive for a pending section never move a visible row of the overview: until the person types, the list
|
|
401
437
|
// keeps the height it had with its placeholders and scrolls what does not fit. A list below its maximum height grows
|
|
402
438
|
// upward from the field, so a change of height alone would move its first row. While searching, the rows arrive
|
|
@@ -466,7 +502,7 @@ export function ChatComposer(props) {
|
|
|
466
502
|
if (!commandSheetHeld()) return;
|
|
467
503
|
onCleanup(holdDialogHistory(() => closeCommandList()));
|
|
468
504
|
});
|
|
469
|
-
const suggestionsOpen = () => commandsOpen() || emojiOpen();
|
|
505
|
+
const suggestionsOpen = () => commandsOpen() || emojiOpen() || peopleOpen();
|
|
470
506
|
const fieldOwnsList = () => suggestionsOpen() && !addSearch();
|
|
471
507
|
// From "+", the panel keeps the height it opened with while the person types or rows arrive, so neither the search
|
|
472
508
|
// field nor the first row moves; what does not fit scrolls. The space above the field still bounds it.
|
|
@@ -781,7 +817,7 @@ export function ChatComposer(props) {
|
|
|
781
817
|
const editBlocked = () => conversation() ? busy() : blocked();
|
|
782
818
|
const hasDraft = () => Boolean(props.value.trim() || !running() && attachments().length > 0);
|
|
783
819
|
/** The draft may go out now, apart from a submission that is already on its way. */
|
|
784
|
-
const submittable = () => !busy() && hasDraft() && !(running() && runningSubmitIntent() === "steer" && mentions().length);
|
|
820
|
+
const submittable = () => !busy() && !props.submitDisabled && hasDraft() && !(running() && runningSubmitIntent() === "steer" && mentions().length);
|
|
785
821
|
const canSubmit = () => !submitting() && submittable();
|
|
786
822
|
const canSelectFiles = () => Boolean(props.fileSelection && !props.fileSelection.disabled && !running() && !blocked());
|
|
787
823
|
const hasAddMenu = () => Boolean(props.fileSelection || props.menuActions?.length);
|
|
@@ -811,7 +847,16 @@ export function ChatComposer(props) {
|
|
|
811
847
|
label: action.label,
|
|
812
848
|
variant: action.variant,
|
|
813
849
|
disabled: action.disabled,
|
|
814
|
-
action: () => reportChatFailure(() =>
|
|
850
|
+
action: () => reportChatFailure(async () => {
|
|
851
|
+
await executeChatAction(action);
|
|
852
|
+
// Like attaching files, an add action returns to the field when the focus is still on this composer's add
|
|
853
|
+
// button or nowhere; focus the action moved somewhere on purpose stays there.
|
|
854
|
+
queueMicrotask(() => {
|
|
855
|
+
const active = textareaRef?.ownerDocument.activeElement;
|
|
856
|
+
const root = textareaRef?.closest(".k2b-chat-composer");
|
|
857
|
+
if (!active || active === active.ownerDocument.body || root?.contains(active) && active.matches("[data-chat-composer-add]")) focus();
|
|
858
|
+
});
|
|
859
|
+
}, props.onError)
|
|
815
860
|
});
|
|
816
861
|
}
|
|
817
862
|
return items;
|
|
@@ -842,11 +887,12 @@ export function ChatComposer(props) {
|
|
|
842
887
|
});
|
|
843
888
|
createEffect(() => {
|
|
844
889
|
emojiMatches();
|
|
890
|
+
peopleMatches();
|
|
845
891
|
setSelectedCommandIndex(0);
|
|
846
892
|
});
|
|
847
893
|
createEffect(() => {
|
|
848
894
|
const command = selectedCommand();
|
|
849
|
-
const id = emojiOpen() ? `${commandListId}-${selectedCommandIndex()}` : command ? commandOptionId(command) : undefined;
|
|
895
|
+
const id = emojiOpen() || peopleOpen() ? `${commandListId}-${selectedCommandIndex()}` : command ? commandOptionId(command) : undefined;
|
|
850
896
|
queueMicrotask(() => {
|
|
851
897
|
const list = commandListRef;
|
|
852
898
|
const item = id ? list?.querySelector(`[id="${id}"]`) : undefined;
|
|
@@ -1299,6 +1345,32 @@ export function ChatComposer(props) {
|
|
|
1299
1345
|
syncCaret();
|
|
1300
1346
|
reportChatFailure(() => props.emoji?.onPick?.(emoji), props.onError);
|
|
1301
1347
|
};
|
|
1348
|
+
/** Replaces `@query` with "@Name" as a mention and a space, as one edit the person can undo. */
|
|
1349
|
+
const pickPersonSuggestion = position => {
|
|
1350
|
+
const token = peopleQuery();
|
|
1351
|
+
const person = peopleMatches()[position];
|
|
1352
|
+
if (!token || !person || !textareaRef || editBlocked()) return;
|
|
1353
|
+
const text = `@${person.name}`;
|
|
1354
|
+
const nextValue = `${props.value.slice(0, token.start)}${text} ${props.value.slice(token.end)}`;
|
|
1355
|
+
const nextMentions = reconcileChatMentions(props.value, nextValue, mentions());
|
|
1356
|
+
nextMentions.push({
|
|
1357
|
+
start: token.start,
|
|
1358
|
+
end: token.start + text.length,
|
|
1359
|
+
attachment: {
|
|
1360
|
+
id: person.id,
|
|
1361
|
+
name: text,
|
|
1362
|
+
kind: "resource",
|
|
1363
|
+
icon: person.agent ? "ti ti-robot" : "ti ti-user"
|
|
1364
|
+
}
|
|
1365
|
+
});
|
|
1366
|
+
edit(nextValue, nextMentions);
|
|
1367
|
+
setPeopleMatches([]);
|
|
1368
|
+
const after = token.start + text.length + 1;
|
|
1369
|
+
queueMicrotask(() => {
|
|
1370
|
+
textareaRef?.setSelectionRange(after, after);
|
|
1371
|
+
syncCaret();
|
|
1372
|
+
});
|
|
1373
|
+
};
|
|
1302
1374
|
const pickEmojiSuggestion = position => {
|
|
1303
1375
|
const token = emojiQuery();
|
|
1304
1376
|
const entry = emojiMatches()[position];
|
|
@@ -1397,17 +1469,18 @@ export function ChatComposer(props) {
|
|
|
1397
1469
|
restoreHistory(event.shiftKey ? 1 : -1);
|
|
1398
1470
|
return;
|
|
1399
1471
|
}
|
|
1400
|
-
if (emojiOpen()) {
|
|
1472
|
+
if (emojiOpen() || peopleOpen()) {
|
|
1473
|
+
const count = emojiOpen() ? emojiMatches().length : peopleMatches().length;
|
|
1401
1474
|
if (event.key === "ArrowUp" || event.key === "ArrowDown") {
|
|
1402
1475
|
event.preventDefault();
|
|
1403
|
-
setSelectedCommandIndex(index => nextChatCommandIndex(index,
|
|
1476
|
+
setSelectedCommandIndex(index => nextChatCommandIndex(index, count, event.key === "ArrowUp" ? -1 : 1));
|
|
1404
1477
|
return;
|
|
1405
1478
|
}
|
|
1406
1479
|
// Only a plain Enter or Tab picks: Shift+Enter still breaks the line, Shift+Tab still moves the focus back.
|
|
1407
1480
|
const plain = !event.shiftKey && !event.altKey && !event.ctrlKey && !event.metaKey;
|
|
1408
1481
|
if (plain && (event.key === "Enter" || event.key === "Tab")) {
|
|
1409
1482
|
event.preventDefault();
|
|
1410
|
-
pickEmojiSuggestion(selectedCommandIndex());
|
|
1483
|
+
if (emojiOpen()) pickEmojiSuggestion(selectedCommandIndex());else pickPersonSuggestion(selectedCommandIndex());
|
|
1411
1484
|
return;
|
|
1412
1485
|
}
|
|
1413
1486
|
if (event.key === "Escape") {
|
|
@@ -1546,6 +1619,7 @@ export function ChatComposer(props) {
|
|
|
1546
1619
|
return _$createComponent(Dropdown.Trigger, {
|
|
1547
1620
|
appearance: "plain",
|
|
1548
1621
|
"class": `k2b-chat-composer__icon-action${extraClass}`,
|
|
1622
|
+
"data-chat-composer-add": "",
|
|
1549
1623
|
get label() {
|
|
1550
1624
|
return chatMessages().addToChat;
|
|
1551
1625
|
},
|
|
@@ -2007,7 +2081,7 @@ export function ChatComposer(props) {
|
|
|
2007
2081
|
_v$1 = fieldOwnsList() ? "list" : undefined,
|
|
2008
2082
|
_v$10 = fieldOwnsList() ? commandListId : undefined,
|
|
2009
2083
|
_v$11 = fieldOwnsList() ? "true" : undefined,
|
|
2010
|
-
_v$12 = !fieldOwnsList() ? undefined : emojiOpen() ? `${commandListId}-${selectedCommandIndex()}` : selectedCommand() ? commandOptionId(selectedCommand()) : undefined;
|
|
2084
|
+
_v$12 = !fieldOwnsList() ? undefined : emojiOpen() || peopleOpen() ? `${commandListId}-${selectedCommandIndex()}` : selectedCommand() ? commandOptionId(selectedCommand()) : undefined;
|
|
2011
2085
|
_v$3 !== _p$.e && _$setAttribute(_el$18, "aria-label", _p$.e = _v$3);
|
|
2012
2086
|
_v$4 !== _p$.t && _el$23.classList.toggle("k2b-chat-composer__textarea--highlighted", _p$.t = _v$4);
|
|
2013
2087
|
_v$5 !== _p$.a && _$setProperty(_el$23, "disabled", _p$.a = _v$5);
|
|
@@ -2159,86 +2233,163 @@ export function ChatComposer(props) {
|
|
|
2159
2233
|
return _el$30;
|
|
2160
2234
|
})();
|
|
2161
2235
|
};
|
|
2236
|
+
const replyQuote = reply => [(() => {
|
|
2237
|
+
var _el$49 = _$getNextElement(_tmpl$16),
|
|
2238
|
+
_el$50 = _el$49.firstChild,
|
|
2239
|
+
_el$52 = _el$50.firstChild,
|
|
2240
|
+
[_el$53, _co$9] = _$getNextMarker(_el$52.nextSibling),
|
|
2241
|
+
_el$51 = _el$53.nextSibling,
|
|
2242
|
+
_el$54 = _el$50.nextSibling,
|
|
2243
|
+
[_el$55, _co$0] = _$getNextMarker(_el$54.nextSibling);
|
|
2244
|
+
_$insert(_el$50, () => chatMessages().replyingTo, _el$53, _co$9);
|
|
2245
|
+
_$insert(_el$49, () => reply.author, _el$55, _co$0);
|
|
2246
|
+
return _el$49;
|
|
2247
|
+
})(), (() => {
|
|
2248
|
+
var _el$56 = _$getNextElement(_tmpl$17);
|
|
2249
|
+
_$insert(_el$56, () => reply.text);
|
|
2250
|
+
return _el$56;
|
|
2251
|
+
})()];
|
|
2162
2252
|
return (() => {
|
|
2163
|
-
var _el$
|
|
2164
|
-
_el$
|
|
2165
|
-
[_el$
|
|
2166
|
-
_el$
|
|
2167
|
-
_el$
|
|
2168
|
-
[_el$
|
|
2169
|
-
_el$
|
|
2170
|
-
[_el$
|
|
2171
|
-
_el$
|
|
2172
|
-
[_el$
|
|
2173
|
-
_el$
|
|
2174
|
-
[_el$
|
|
2175
|
-
_el$
|
|
2176
|
-
_el$
|
|
2177
|
-
_el$
|
|
2178
|
-
|
|
2179
|
-
_el$
|
|
2180
|
-
[_el$
|
|
2253
|
+
var _el$57 = _$getNextElement(_tmpl$29),
|
|
2254
|
+
_el$136 = _el$57.firstChild,
|
|
2255
|
+
[_el$137, _co$34] = _$getNextMarker(_el$136.nextSibling),
|
|
2256
|
+
_el$96 = _el$137.nextSibling,
|
|
2257
|
+
_el$120 = _el$96.firstChild,
|
|
2258
|
+
[_el$121, _co$27] = _$getNextMarker(_el$120.nextSibling),
|
|
2259
|
+
_el$122 = _el$121.nextSibling,
|
|
2260
|
+
[_el$123, _co$28] = _$getNextMarker(_el$122.nextSibling),
|
|
2261
|
+
_el$124 = _el$123.nextSibling,
|
|
2262
|
+
[_el$125, _co$29] = _$getNextMarker(_el$124.nextSibling),
|
|
2263
|
+
_el$126 = _el$125.nextSibling,
|
|
2264
|
+
[_el$127, _co$30] = _$getNextMarker(_el$126.nextSibling),
|
|
2265
|
+
_el$128 = _el$127.nextSibling,
|
|
2266
|
+
[_el$129, _co$31] = _$getNextMarker(_el$128.nextSibling),
|
|
2267
|
+
_el$130 = _el$96.nextSibling,
|
|
2268
|
+
_el$131 = _el$130.nextSibling,
|
|
2269
|
+
_el$132 = _el$131.firstChild,
|
|
2270
|
+
[_el$133, _co$32] = _$getNextMarker(_el$132.nextSibling),
|
|
2271
|
+
_el$134 = _el$133.nextSibling,
|
|
2272
|
+
[_el$135, _co$33] = _$getNextMarker(_el$134.nextSibling);
|
|
2181
2273
|
var _ref$7 = shellRef;
|
|
2182
|
-
typeof _ref$7 === "function" ? _$use(_ref$7, _el$
|
|
2183
|
-
_$insert(_el$
|
|
2274
|
+
typeof _ref$7 === "function" ? _$use(_ref$7, _el$57) : shellRef = _el$57;
|
|
2275
|
+
_$insert(_el$57, _$createComponent(Show, {
|
|
2184
2276
|
get when() {
|
|
2185
2277
|
return suggestionsOpen() || hasAccessory();
|
|
2186
2278
|
},
|
|
2187
2279
|
get children() {
|
|
2188
|
-
var _el$
|
|
2189
|
-
_el$
|
|
2190
|
-
_el$
|
|
2191
|
-
[_el$
|
|
2192
|
-
_el$
|
|
2193
|
-
[_el$
|
|
2194
|
-
|
|
2195
|
-
|
|
2280
|
+
var _el$58 = _$getNextElement(_tmpl$24),
|
|
2281
|
+
_el$59 = _el$58.firstChild,
|
|
2282
|
+
_el$90 = _el$59.nextSibling,
|
|
2283
|
+
[_el$91, _co$16] = _$getNextMarker(_el$90.nextSibling),
|
|
2284
|
+
_el$92 = _el$91.nextSibling,
|
|
2285
|
+
[_el$93, _co$17] = _$getNextMarker(_el$92.nextSibling),
|
|
2286
|
+
_el$94 = _el$93.nextSibling,
|
|
2287
|
+
[_el$95, _co$18] = _$getNextMarker(_el$94.nextSibling);
|
|
2288
|
+
_$insert(_el$59, accessory);
|
|
2289
|
+
_$insert(_el$58, _$createComponent(Show, {
|
|
2196
2290
|
get when() {
|
|
2197
2291
|
return emojiOpen();
|
|
2198
2292
|
},
|
|
2199
2293
|
get children() {
|
|
2200
|
-
var _el$
|
|
2201
|
-
_el$
|
|
2294
|
+
var _el$60 = _$getNextElement(_tmpl$18),
|
|
2295
|
+
_el$61 = _el$60.firstChild;
|
|
2202
2296
|
var _ref$8 = commandListRef;
|
|
2203
|
-
typeof _ref$8 === "function" ? _$use(_ref$8, _el$
|
|
2204
|
-
_$setAttribute(_el$
|
|
2205
|
-
_$insert(_el$
|
|
2297
|
+
typeof _ref$8 === "function" ? _$use(_ref$8, _el$61) : commandListRef = _el$61;
|
|
2298
|
+
_$setAttribute(_el$61, "id", commandListId);
|
|
2299
|
+
_$insert(_el$61, _$createComponent(For, {
|
|
2206
2300
|
get each() {
|
|
2207
2301
|
return emojiMatches();
|
|
2208
2302
|
},
|
|
2209
2303
|
children: (entry, index) => (() => {
|
|
2210
|
-
var _el$
|
|
2211
|
-
_el$
|
|
2212
|
-
_el$
|
|
2213
|
-
_el$
|
|
2214
|
-
[_el$
|
|
2215
|
-
_el$
|
|
2216
|
-
_el$
|
|
2217
|
-
_$insert(_el$
|
|
2218
|
-
_$insert(_el$
|
|
2219
|
-
_$insert(_el$
|
|
2304
|
+
var _el$138 = _$getNextElement(_tmpl$30),
|
|
2305
|
+
_el$139 = _el$138.firstChild,
|
|
2306
|
+
_el$140 = _el$139.nextSibling,
|
|
2307
|
+
_el$141 = _el$140.nextSibling,
|
|
2308
|
+
[_el$142, _co$35] = _$getNextMarker(_el$141.nextSibling);
|
|
2309
|
+
_el$138.$$click = () => pickEmojiSuggestion(index());
|
|
2310
|
+
_el$138.$$mousedown = keepFieldFocus;
|
|
2311
|
+
_$insert(_el$139, () => emojiInTone(entry, props.emoji?.skinTone ?? 0));
|
|
2312
|
+
_$insert(_el$140, () => emojiName(entry, locale()));
|
|
2313
|
+
_$insert(_el$138, _$createComponent(Show, {
|
|
2220
2314
|
get when() {
|
|
2221
2315
|
return entry.shortcodes[0];
|
|
2222
2316
|
},
|
|
2223
2317
|
children: code => (() => {
|
|
2224
|
-
var _el$
|
|
2225
|
-
_el$
|
|
2226
|
-
_el$
|
|
2227
|
-
[_el$
|
|
2228
|
-
_el$
|
|
2229
|
-
_$insert(_el$
|
|
2230
|
-
return _el$
|
|
2318
|
+
var _el$143 = _$getNextElement(_tmpl$31),
|
|
2319
|
+
_el$144 = _el$143.firstChild,
|
|
2320
|
+
_el$146 = _el$144.nextSibling,
|
|
2321
|
+
[_el$147, _co$36] = _$getNextMarker(_el$146.nextSibling),
|
|
2322
|
+
_el$145 = _el$147.nextSibling;
|
|
2323
|
+
_$insert(_el$143, code, _el$147, _co$36);
|
|
2324
|
+
return _el$143;
|
|
2231
2325
|
})()
|
|
2232
|
-
}), _el$
|
|
2326
|
+
}), _el$142, _co$35);
|
|
2233
2327
|
_$effect(_p$ => {
|
|
2234
2328
|
var _v$38 = `${commandListId}-${index()}`,
|
|
2235
2329
|
_v$39 = index() === selectedCommandIndex(),
|
|
2236
2330
|
_v$40 = emojiName(entry, locale()),
|
|
2237
2331
|
_v$41 = index() === selectedCommandIndex() ? "true" : undefined;
|
|
2238
|
-
_v$38 !== _p$.e && _$setAttribute(_el$
|
|
2239
|
-
_v$39 !== _p$.t && _$setAttribute(_el$
|
|
2240
|
-
_v$40 !== _p$.a && _$setAttribute(_el$
|
|
2241
|
-
_v$41 !== _p$.o && _$setAttribute(_el$
|
|
2332
|
+
_v$38 !== _p$.e && _$setAttribute(_el$138, "id", _p$.e = _v$38);
|
|
2333
|
+
_v$39 !== _p$.t && _$setAttribute(_el$138, "aria-selected", _p$.t = _v$39);
|
|
2334
|
+
_v$40 !== _p$.a && _$setAttribute(_el$138, "aria-label", _p$.a = _v$40);
|
|
2335
|
+
_v$41 !== _p$.o && _$setAttribute(_el$138, "data-active", _p$.o = _v$41);
|
|
2336
|
+
return _p$;
|
|
2337
|
+
}, {
|
|
2338
|
+
e: undefined,
|
|
2339
|
+
t: undefined,
|
|
2340
|
+
a: undefined,
|
|
2341
|
+
o: undefined
|
|
2342
|
+
});
|
|
2343
|
+
_$runHydrationEvents();
|
|
2344
|
+
return _el$138;
|
|
2345
|
+
})()
|
|
2346
|
+
}));
|
|
2347
|
+
_$effect(() => _$setAttribute(_el$61, "aria-label", chatMessages().emojiSuggestions));
|
|
2348
|
+
return _el$60;
|
|
2349
|
+
}
|
|
2350
|
+
}), _el$91, _co$16);
|
|
2351
|
+
_$insert(_el$58, _$createComponent(Show, {
|
|
2352
|
+
get when() {
|
|
2353
|
+
return peopleOpen();
|
|
2354
|
+
},
|
|
2355
|
+
get children() {
|
|
2356
|
+
var _el$62 = _$getNextElement(_tmpl$18),
|
|
2357
|
+
_el$63 = _el$62.firstChild;
|
|
2358
|
+
var _ref$9 = commandListRef;
|
|
2359
|
+
typeof _ref$9 === "function" ? _$use(_ref$9, _el$63) : commandListRef = _el$63;
|
|
2360
|
+
_$setAttribute(_el$63, "id", commandListId);
|
|
2361
|
+
_$insert(_el$63, _$createComponent(For, {
|
|
2362
|
+
get each() {
|
|
2363
|
+
return peopleMatches();
|
|
2364
|
+
},
|
|
2365
|
+
children: (person, index) => (() => {
|
|
2366
|
+
var _el$148 = _$getNextElement(_tmpl$32),
|
|
2367
|
+
_el$149 = _el$148.firstChild,
|
|
2368
|
+
_el$150 = _el$149.nextSibling,
|
|
2369
|
+
_el$152 = _el$150.nextSibling,
|
|
2370
|
+
[_el$153, _co$37] = _$getNextMarker(_el$152.nextSibling);
|
|
2371
|
+
_el$148.$$click = () => pickPersonSuggestion(index());
|
|
2372
|
+
_el$148.$$mousedown = keepFieldFocus;
|
|
2373
|
+
_$insert(_el$150, () => person.name);
|
|
2374
|
+
_$insert(_el$148, _$createComponent(Show, {
|
|
2375
|
+
get when() {
|
|
2376
|
+
return person.agent;
|
|
2377
|
+
},
|
|
2378
|
+
get children() {
|
|
2379
|
+
var _el$151 = _$getNextElement(_tmpl$15);
|
|
2380
|
+
_$insert(_el$151, () => chatMessages().agentLabel);
|
|
2381
|
+
return _el$151;
|
|
2382
|
+
}
|
|
2383
|
+
}), _el$153, _co$37);
|
|
2384
|
+
_$effect(_p$ => {
|
|
2385
|
+
var _v$42 = `${commandListId}-${index()}`,
|
|
2386
|
+
_v$43 = index() === selectedCommandIndex(),
|
|
2387
|
+
_v$44 = index() === selectedCommandIndex() ? "true" : undefined,
|
|
2388
|
+
_v$45 = person.agent ? "ti ti-robot" : "ti ti-user";
|
|
2389
|
+
_v$42 !== _p$.e && _$setAttribute(_el$148, "id", _p$.e = _v$42);
|
|
2390
|
+
_v$43 !== _p$.t && _$setAttribute(_el$148, "aria-selected", _p$.t = _v$43);
|
|
2391
|
+
_v$44 !== _p$.a && _$setAttribute(_el$148, "data-active", _p$.a = _v$44);
|
|
2392
|
+
_v$45 !== _p$.o && _$className(_el$149, _p$.o = _v$45);
|
|
2242
2393
|
return _p$;
|
|
2243
2394
|
}, {
|
|
2244
2395
|
e: undefined,
|
|
@@ -2247,44 +2398,44 @@ export function ChatComposer(props) {
|
|
|
2247
2398
|
o: undefined
|
|
2248
2399
|
});
|
|
2249
2400
|
_$runHydrationEvents();
|
|
2250
|
-
return _el$
|
|
2401
|
+
return _el$148;
|
|
2251
2402
|
})()
|
|
2252
2403
|
}));
|
|
2253
|
-
_$effect(() => _$setAttribute(_el$
|
|
2254
|
-
return _el$
|
|
2404
|
+
_$effect(() => _$setAttribute(_el$63, "aria-label", chatMessages().peopleSuggestions));
|
|
2405
|
+
return _el$62;
|
|
2255
2406
|
}
|
|
2256
|
-
}), _el$
|
|
2257
|
-
_$insert(_el$
|
|
2407
|
+
}), _el$93, _co$17);
|
|
2408
|
+
_$insert(_el$58, _$createComponent(Show, {
|
|
2258
2409
|
get when() {
|
|
2259
2410
|
return commandsOpen();
|
|
2260
2411
|
},
|
|
2261
2412
|
get children() {
|
|
2262
|
-
var _el$
|
|
2263
|
-
_el$
|
|
2264
|
-
[_el$
|
|
2265
|
-
_el$
|
|
2266
|
-
_el$
|
|
2267
|
-
[_el$
|
|
2268
|
-
_el$
|
|
2269
|
-
[_el$
|
|
2270
|
-
_el$
|
|
2271
|
-
[_el$
|
|
2272
|
-
_el$
|
|
2273
|
-
[_el$
|
|
2274
|
-
_el$
|
|
2275
|
-
[_el$
|
|
2276
|
-
_el$
|
|
2413
|
+
var _el$64 = _$getNextElement(_tmpl$23),
|
|
2414
|
+
_el$88 = _el$64.firstChild,
|
|
2415
|
+
[_el$89, _co$15] = _$getNextMarker(_el$88.nextSibling),
|
|
2416
|
+
_el$68 = _el$89.nextSibling,
|
|
2417
|
+
_el$78 = _el$68.firstChild,
|
|
2418
|
+
[_el$79, _co$10] = _$getNextMarker(_el$78.nextSibling),
|
|
2419
|
+
_el$80 = _el$79.nextSibling,
|
|
2420
|
+
[_el$81, _co$11] = _$getNextMarker(_el$80.nextSibling),
|
|
2421
|
+
_el$82 = _el$81.nextSibling,
|
|
2422
|
+
[_el$83, _co$12] = _$getNextMarker(_el$82.nextSibling),
|
|
2423
|
+
_el$84 = _el$83.nextSibling,
|
|
2424
|
+
[_el$85, _co$13] = _$getNextMarker(_el$84.nextSibling),
|
|
2425
|
+
_el$86 = _el$85.nextSibling,
|
|
2426
|
+
[_el$87, _co$14] = _$getNextMarker(_el$86.nextSibling);
|
|
2427
|
+
_el$64.$$mousedown = event => {
|
|
2277
2428
|
if (addSearch() && event.target !== addSearchRef) event.preventDefault();
|
|
2278
2429
|
};
|
|
2279
|
-
_$insert(_el$
|
|
2430
|
+
_$insert(_el$64, _$createComponent(Show, {
|
|
2280
2431
|
get when() {
|
|
2281
2432
|
return addSearch();
|
|
2282
2433
|
},
|
|
2283
2434
|
get children() {
|
|
2284
|
-
var _el$
|
|
2285
|
-
_el$
|
|
2286
|
-
_el$
|
|
2287
|
-
_el$
|
|
2435
|
+
var _el$65 = _$getNextElement(_tmpl$19),
|
|
2436
|
+
_el$66 = _el$65.firstChild,
|
|
2437
|
+
_el$67 = _el$66.nextSibling;
|
|
2438
|
+
_el$67.$$focusout = event => {
|
|
2288
2439
|
const next = event.relatedTarget;
|
|
2289
2440
|
if (next instanceof Node && commandListRef?.parentElement?.contains(next)) return;
|
|
2290
2441
|
// Focus that leaves another way, such as with Shift+Tab, closes the list and stays where it went.
|
|
@@ -2292,27 +2443,27 @@ export function ChatComposer(props) {
|
|
|
2292
2443
|
if (addSearch() && document.activeElement !== addSearchRef) endAddSearch(false);
|
|
2293
2444
|
});
|
|
2294
2445
|
};
|
|
2295
|
-
_el$
|
|
2446
|
+
_el$67.addEventListener("compositionend", () => {
|
|
2296
2447
|
addComposing = false;
|
|
2297
2448
|
});
|
|
2298
|
-
_el$
|
|
2449
|
+
_el$67.addEventListener("compositionstart", () => {
|
|
2299
2450
|
addComposing = true;
|
|
2300
2451
|
});
|
|
2301
|
-
_el$
|
|
2302
|
-
_el$
|
|
2303
|
-
var _ref$
|
|
2304
|
-
typeof _ref$
|
|
2305
|
-
_$setAttribute(_el$
|
|
2306
|
-
_$setAttribute(_el$
|
|
2452
|
+
_el$67.$$keydown = onAddSearchKeyDown;
|
|
2453
|
+
_el$67.$$input = event => setAddQuery(event.currentTarget.value);
|
|
2454
|
+
var _ref$0 = addSearchRef;
|
|
2455
|
+
typeof _ref$0 === "function" ? _$use(_ref$0, _el$67) : addSearchRef = _el$67;
|
|
2456
|
+
_$setAttribute(_el$67, "aria-controls", commandListId);
|
|
2457
|
+
_$setAttribute(_el$67, "spellcheck", false);
|
|
2307
2458
|
_$effect(_p$ => {
|
|
2308
2459
|
var _v$24 = chatMessages().commandSearch,
|
|
2309
2460
|
_v$25 = chatMessages().commandSearchLabel,
|
|
2310
2461
|
_v$26 = selectedCommand() ? commandOptionId(selectedCommand()) : undefined,
|
|
2311
2462
|
_v$27 = openingRow() !== undefined;
|
|
2312
|
-
_v$24 !== _p$.e && _$setAttribute(_el$
|
|
2313
|
-
_v$25 !== _p$.t && _$setAttribute(_el$
|
|
2314
|
-
_v$26 !== _p$.a && _$setAttribute(_el$
|
|
2315
|
-
_v$27 !== _p$.o && _$setProperty(_el$
|
|
2463
|
+
_v$24 !== _p$.e && _$setAttribute(_el$67, "placeholder", _p$.e = _v$24);
|
|
2464
|
+
_v$25 !== _p$.t && _$setAttribute(_el$67, "aria-label", _p$.t = _v$25);
|
|
2465
|
+
_v$26 !== _p$.a && _$setAttribute(_el$67, "aria-activedescendant", _p$.a = _v$26);
|
|
2466
|
+
_v$27 !== _p$.o && _$setProperty(_el$67, "readOnly", _p$.o = _v$27);
|
|
2316
2467
|
return _p$;
|
|
2317
2468
|
}, {
|
|
2318
2469
|
e: undefined,
|
|
@@ -2320,15 +2471,15 @@ export function ChatComposer(props) {
|
|
|
2320
2471
|
a: undefined,
|
|
2321
2472
|
o: undefined
|
|
2322
2473
|
});
|
|
2323
|
-
_$effect(() => _$setProperty(_el$
|
|
2474
|
+
_$effect(() => _$setProperty(_el$67, "value", addQuery()));
|
|
2324
2475
|
_$runHydrationEvents();
|
|
2325
|
-
return _el$
|
|
2476
|
+
return _el$65;
|
|
2326
2477
|
}
|
|
2327
|
-
}), _el$
|
|
2328
|
-
var _ref$
|
|
2329
|
-
typeof _ref$
|
|
2330
|
-
_$setAttribute(_el$
|
|
2331
|
-
_$insert(_el$
|
|
2478
|
+
}), _el$89, _co$15);
|
|
2479
|
+
var _ref$1 = commandListRef;
|
|
2480
|
+
typeof _ref$1 === "function" ? _$use(_ref$1, _el$68) : commandListRef = _el$68;
|
|
2481
|
+
_$setAttribute(_el$68, "id", commandListId);
|
|
2482
|
+
_$insert(_el$68, _$createComponent(For, {
|
|
2332
2483
|
get each() {
|
|
2333
2484
|
return commandModel().groups.map(commandGroupKey);
|
|
2334
2485
|
},
|
|
@@ -2347,108 +2498,108 @@ export function ChatComposer(props) {
|
|
|
2347
2498
|
});
|
|
2348
2499
|
},
|
|
2349
2500
|
get children() {
|
|
2350
|
-
var _el$
|
|
2351
|
-
_el$
|
|
2352
|
-
_el$
|
|
2353
|
-
_el$
|
|
2354
|
-
[_el$
|
|
2355
|
-
_el$
|
|
2356
|
-
[_el$
|
|
2357
|
-
_el$
|
|
2358
|
-
[_el$
|
|
2359
|
-
_$insert(_el$
|
|
2360
|
-
_$insert(_el$
|
|
2501
|
+
var _el$154 = _$getNextElement(_tmpl$34),
|
|
2502
|
+
_el$155 = _el$154.firstChild,
|
|
2503
|
+
_el$156 = _el$155.firstChild,
|
|
2504
|
+
_el$158 = _el$156.nextSibling,
|
|
2505
|
+
[_el$159, _co$38] = _$getNextMarker(_el$158.nextSibling),
|
|
2506
|
+
_el$160 = _el$155.nextSibling,
|
|
2507
|
+
[_el$161, _co$39] = _$getNextMarker(_el$160.nextSibling),
|
|
2508
|
+
_el$162 = _el$161.nextSibling,
|
|
2509
|
+
[_el$163, _co$40] = _$getNextMarker(_el$162.nextSibling);
|
|
2510
|
+
_$insert(_el$156, () => group()?.scopeTitle ?? group()?.section?.label);
|
|
2511
|
+
_$insert(_el$155, _$createComponent(Show, {
|
|
2361
2512
|
get when() {
|
|
2362
2513
|
return group()?.loading;
|
|
2363
2514
|
},
|
|
2364
2515
|
get children() {
|
|
2365
|
-
return _$getNextElement(_tmpl$
|
|
2516
|
+
return _$getNextElement(_tmpl$33);
|
|
2366
2517
|
}
|
|
2367
|
-
}), _el$
|
|
2368
|
-
_$insert(_el$
|
|
2518
|
+
}), _el$159, _co$38);
|
|
2519
|
+
_$insert(_el$154, _$createComponent(For, {
|
|
2369
2520
|
get each() {
|
|
2370
2521
|
return rows();
|
|
2371
2522
|
},
|
|
2372
2523
|
children: renderCommandRow
|
|
2373
|
-
}), _el$
|
|
2374
|
-
_$insert(_el$
|
|
2524
|
+
}), _el$161, _co$39);
|
|
2525
|
+
_$insert(_el$154, _$createComponent(Index, {
|
|
2375
2526
|
get each() {
|
|
2376
2527
|
return Array.from({
|
|
2377
2528
|
length: Math.max(group()?.placeholder ? 1 : 0, group()?.pendingRows ?? 0)
|
|
2378
2529
|
});
|
|
2379
2530
|
},
|
|
2380
|
-
children: () => _$getNextElement(_tmpl$
|
|
2381
|
-
}), _el$
|
|
2531
|
+
children: () => _$getNextElement(_tmpl$35)
|
|
2532
|
+
}), _el$163, _co$40);
|
|
2382
2533
|
_$effect(_p$ => {
|
|
2383
|
-
var _v$
|
|
2384
|
-
_v$
|
|
2385
|
-
_v$
|
|
2386
|
-
_v$
|
|
2534
|
+
var _v$46 = headingId(),
|
|
2535
|
+
_v$47 = headingId();
|
|
2536
|
+
_v$46 !== _p$.e && _$setAttribute(_el$154, "aria-labelledby", _p$.e = _v$46);
|
|
2537
|
+
_v$47 !== _p$.t && _$setAttribute(_el$155, "id", _p$.t = _v$47);
|
|
2387
2538
|
return _p$;
|
|
2388
2539
|
}, {
|
|
2389
2540
|
e: undefined,
|
|
2390
2541
|
t: undefined
|
|
2391
2542
|
});
|
|
2392
|
-
return _el$
|
|
2543
|
+
return _el$154;
|
|
2393
2544
|
}
|
|
2394
2545
|
});
|
|
2395
2546
|
}
|
|
2396
|
-
}), _el$
|
|
2397
|
-
_$insert(_el$
|
|
2547
|
+
}), _el$79, _co$10);
|
|
2548
|
+
_$insert(_el$68, _$createComponent(Show, {
|
|
2398
2549
|
get when() {
|
|
2399
2550
|
return _$memo(() => !!(searching() && foundCommandCount() === 0))() && !commandModel().groups.some(group => group.section || group.scopeTitle);
|
|
2400
2551
|
},
|
|
2401
2552
|
get children() {
|
|
2402
|
-
var _el$
|
|
2403
|
-
_el$
|
|
2404
|
-
_el$
|
|
2405
|
-
_$insert(_el$
|
|
2406
|
-
return _el$
|
|
2553
|
+
var _el$69 = _$getNextElement(_tmpl$20),
|
|
2554
|
+
_el$70 = _el$69.firstChild,
|
|
2555
|
+
_el$71 = _el$70.nextSibling;
|
|
2556
|
+
_$insert(_el$71, () => messages().loading);
|
|
2557
|
+
return _el$69;
|
|
2407
2558
|
}
|
|
2408
|
-
}), _el$
|
|
2409
|
-
_$insert(_el$
|
|
2559
|
+
}), _el$81, _co$11);
|
|
2560
|
+
_$insert(_el$68, _$createComponent(Show, {
|
|
2410
2561
|
get when() {
|
|
2411
2562
|
return searchError();
|
|
2412
2563
|
},
|
|
2413
2564
|
get children() {
|
|
2414
|
-
var _el$
|
|
2415
|
-
_el$
|
|
2416
|
-
_el$
|
|
2417
|
-
_el$
|
|
2418
|
-
[_el$
|
|
2419
|
-
_$insert(_el$
|
|
2420
|
-
return _el$
|
|
2565
|
+
var _el$72 = _$getNextElement(_tmpl$21),
|
|
2566
|
+
_el$73 = _el$72.firstChild,
|
|
2567
|
+
_el$74 = _el$73.nextSibling,
|
|
2568
|
+
_el$75 = _el$74.nextSibling,
|
|
2569
|
+
[_el$76, _co$1] = _$getNextMarker(_el$75.nextSibling);
|
|
2570
|
+
_$insert(_el$72, () => messages().error, _el$76, _co$1);
|
|
2571
|
+
return _el$72;
|
|
2421
2572
|
}
|
|
2422
|
-
}), _el$
|
|
2423
|
-
_$insert(_el$
|
|
2573
|
+
}), _el$83, _co$12);
|
|
2574
|
+
_$insert(_el$68, _$createComponent(Show, {
|
|
2424
2575
|
get when() {
|
|
2425
2576
|
return _$memo(() => !!(!searching() && !searchError() && foundCommandCount() === 0))() && !commandModel().groups.some(group => group.pendingRows);
|
|
2426
2577
|
},
|
|
2427
2578
|
get children() {
|
|
2428
|
-
var _el$
|
|
2429
|
-
_$insert(_el$
|
|
2579
|
+
var _el$77 = _$getNextElement(_tmpl$22);
|
|
2580
|
+
_$insert(_el$77, (() => {
|
|
2430
2581
|
var _c$ = _$memo(() => !!!parsedCommandQuery().query.trim());
|
|
2431
2582
|
return () => _c$() ? messages().noResults : chatMessages().commandsNothingFound({
|
|
2432
2583
|
query: parsedCommandQuery().query.trim()
|
|
2433
2584
|
});
|
|
2434
2585
|
})());
|
|
2435
|
-
return _el$
|
|
2586
|
+
return _el$77;
|
|
2436
2587
|
}
|
|
2437
|
-
}), _el$
|
|
2438
|
-
_$insert(_el$
|
|
2588
|
+
}), _el$85, _co$13);
|
|
2589
|
+
_$insert(_el$68, _$createComponent(Show, {
|
|
2439
2590
|
get when() {
|
|
2440
2591
|
return commandModel().fallback?.command;
|
|
2441
2592
|
},
|
|
2442
2593
|
keyed: true,
|
|
2443
2594
|
children: command => renderCommandRow(command)
|
|
2444
|
-
}), _el$
|
|
2595
|
+
}), _el$87, _co$14);
|
|
2445
2596
|
_$effect(_p$ => {
|
|
2446
2597
|
var _v$28 = addSearch() ? "" : undefined,
|
|
2447
2598
|
_v$29 = chatMessages().commands,
|
|
2448
2599
|
_v$30 = searching() ? "true" : undefined;
|
|
2449
|
-
_v$28 !== _p$.e && _$setAttribute(_el$
|
|
2450
|
-
_v$29 !== _p$.t && _$setAttribute(_el$
|
|
2451
|
-
_v$30 !== _p$.a && _$setAttribute(_el$
|
|
2600
|
+
_v$28 !== _p$.e && _$setAttribute(_el$64, "data-search", _p$.e = _v$28);
|
|
2601
|
+
_v$29 !== _p$.t && _$setAttribute(_el$68, "aria-label", _p$.t = _v$29);
|
|
2602
|
+
_v$30 !== _p$.a && _$setAttribute(_el$68, "aria-busy", _p$.a = _v$30);
|
|
2452
2603
|
return _p$;
|
|
2453
2604
|
}, {
|
|
2454
2605
|
e: undefined,
|
|
@@ -2456,245 +2607,289 @@ export function ChatComposer(props) {
|
|
|
2456
2607
|
a: undefined
|
|
2457
2608
|
});
|
|
2458
2609
|
_$runHydrationEvents();
|
|
2459
|
-
return _el$
|
|
2610
|
+
return _el$64;
|
|
2460
2611
|
}
|
|
2461
|
-
}), _el$
|
|
2612
|
+
}), _el$95, _co$18);
|
|
2462
2613
|
_$effect(_p$ => {
|
|
2463
2614
|
var _v$31 = hasAccessory() ? undefined : "true",
|
|
2464
2615
|
_v$32 = suggestionsOpen() ? "hidden" : undefined,
|
|
2465
2616
|
_v$33 = suggestionsOpen();
|
|
2466
|
-
_v$31 !== _p$.e && _$setAttribute(_el$
|
|
2467
|
-
_v$32 !== _p$.t && _$setStyleProperty(_el$
|
|
2468
|
-
_v$33 !== _p$.a && _$setProperty(_el$
|
|
2617
|
+
_v$31 !== _p$.e && _$setAttribute(_el$58, "data-overlay", _p$.e = _v$31);
|
|
2618
|
+
_v$32 !== _p$.t && _$setStyleProperty(_el$59, "visibility", _p$.t = _v$32);
|
|
2619
|
+
_v$33 !== _p$.a && _$setProperty(_el$59, "inert", _p$.a = _v$33);
|
|
2469
2620
|
return _p$;
|
|
2470
2621
|
}, {
|
|
2471
2622
|
e: undefined,
|
|
2472
2623
|
t: undefined,
|
|
2473
2624
|
a: undefined
|
|
2474
2625
|
});
|
|
2475
|
-
return _el$
|
|
2626
|
+
return _el$58;
|
|
2476
2627
|
}
|
|
2477
|
-
}), _el$
|
|
2478
|
-
var _ref$
|
|
2479
|
-
typeof _ref$
|
|
2480
|
-
_$insert(_el$
|
|
2628
|
+
}), _el$137, _co$34);
|
|
2629
|
+
var _ref$10 = composerRef;
|
|
2630
|
+
typeof _ref$10 === "function" ? _$use(_ref$10, _el$96) : composerRef = _el$96;
|
|
2631
|
+
_$insert(_el$96, _$createComponent(Show, {
|
|
2481
2632
|
get when() {
|
|
2482
2633
|
return showHint();
|
|
2483
2634
|
},
|
|
2484
2635
|
get children() {
|
|
2485
|
-
var _el$
|
|
2486
|
-
_$insert(_el$
|
|
2636
|
+
var _el$97 = _$getNextElement(_tmpl$25);
|
|
2637
|
+
_$insert(_el$97, _$createComponent(Show, {
|
|
2487
2638
|
get when() {
|
|
2488
2639
|
return dictationStatus();
|
|
2489
2640
|
},
|
|
2490
2641
|
get fallback() {
|
|
2491
2642
|
return (() => {
|
|
2492
|
-
var _el$
|
|
2493
|
-
_$insert(_el$
|
|
2494
|
-
return _el$
|
|
2643
|
+
var _el$165 = _$getNextElement(_tmpl$36);
|
|
2644
|
+
_$insert(_el$165, hint);
|
|
2645
|
+
return _el$165;
|
|
2495
2646
|
})();
|
|
2496
2647
|
},
|
|
2497
2648
|
children: status => [(() => {
|
|
2498
|
-
var _el$
|
|
2499
|
-
_el$
|
|
2500
|
-
_el$
|
|
2501
|
-
_$insert(_el$
|
|
2649
|
+
var _el$166 = _$getNextElement(_tmpl$37),
|
|
2650
|
+
_el$167 = _el$166.firstChild,
|
|
2651
|
+
_el$168 = _el$167.nextSibling;
|
|
2652
|
+
_$insert(_el$168, () => status().text);
|
|
2502
2653
|
_$effect(_p$ => {
|
|
2503
|
-
var _v$
|
|
2504
|
-
_v$
|
|
2505
|
-
_v$
|
|
2506
|
-
_v$
|
|
2654
|
+
var _v$48 = dictation() ?? undefined,
|
|
2655
|
+
_v$49 = status().icon;
|
|
2656
|
+
_v$48 !== _p$.e && _$setAttribute(_el$166, "data-state", _p$.e = _v$48);
|
|
2657
|
+
_v$49 !== _p$.t && _$className(_el$167, _p$.t = _v$49);
|
|
2507
2658
|
return _p$;
|
|
2508
2659
|
}, {
|
|
2509
2660
|
e: undefined,
|
|
2510
2661
|
t: undefined
|
|
2511
2662
|
});
|
|
2512
|
-
return _el$
|
|
2663
|
+
return _el$166;
|
|
2513
2664
|
})(), _$createComponent(Show, {
|
|
2514
2665
|
get when() {
|
|
2515
2666
|
return _$memo(() => dictation() === "refined")() ? props.microphone?.onRestoreOriginal : undefined;
|
|
2516
2667
|
},
|
|
2517
2668
|
children: restore => (() => {
|
|
2518
|
-
var _el$
|
|
2519
|
-
_el$
|
|
2520
|
-
_el$
|
|
2521
|
-
_$insert(_el$
|
|
2522
|
-
_$effect(() => _$setProperty(_el$
|
|
2669
|
+
var _el$169 = _$getNextElement(_tmpl$38);
|
|
2670
|
+
_el$169.$$click = () => reportChatFailure(restore(), props.onError);
|
|
2671
|
+
_el$169.$$mousedown = keepFieldFocus;
|
|
2672
|
+
_$insert(_el$169, () => chatMessages().restoreOriginal);
|
|
2673
|
+
_$effect(() => _$setProperty(_el$169, "disabled", microphoneDisabled()));
|
|
2523
2674
|
_$runHydrationEvents();
|
|
2524
|
-
return _el$
|
|
2675
|
+
return _el$169;
|
|
2525
2676
|
})()
|
|
2526
2677
|
})]
|
|
2527
2678
|
}));
|
|
2528
|
-
return _el$
|
|
2679
|
+
return _el$97;
|
|
2529
2680
|
}
|
|
2530
|
-
}), _el$
|
|
2531
|
-
_$insert(_el$
|
|
2681
|
+
}), _el$121, _co$27);
|
|
2682
|
+
_$insert(_el$96, _$createComponent(Show, {
|
|
2683
|
+
get when() {
|
|
2684
|
+
return props.reply;
|
|
2685
|
+
},
|
|
2686
|
+
children: reply => (() => {
|
|
2687
|
+
var _el$170 = _$getNextElement(_tmpl$39),
|
|
2688
|
+
_el$172 = _el$170.firstChild,
|
|
2689
|
+
[_el$173, _co$41] = _$getNextMarker(_el$172.nextSibling),
|
|
2690
|
+
_el$171 = _el$173.nextSibling;
|
|
2691
|
+
_$insert(_el$170, _$createComponent(Show, {
|
|
2692
|
+
get when() {
|
|
2693
|
+
return reply().onSelect;
|
|
2694
|
+
},
|
|
2695
|
+
get fallback() {
|
|
2696
|
+
return (() => {
|
|
2697
|
+
var _el$174 = _$getNextElement(_tmpl$40);
|
|
2698
|
+
_$insert(_el$174, () => replyQuote(reply()));
|
|
2699
|
+
return _el$174;
|
|
2700
|
+
})();
|
|
2701
|
+
},
|
|
2702
|
+
children: select => (() => {
|
|
2703
|
+
var _el$175 = _$getNextElement(_tmpl$41);
|
|
2704
|
+
_el$175.$$click = () => select()();
|
|
2705
|
+
_$insert(_el$175, () => replyQuote(reply()));
|
|
2706
|
+
_$runHydrationEvents();
|
|
2707
|
+
return _el$175;
|
|
2708
|
+
})()
|
|
2709
|
+
}), _el$173, _co$41);
|
|
2710
|
+
_el$171.$$click = () => reply().onCancel();
|
|
2711
|
+
_el$171.$$mousedown = keepFieldFocus;
|
|
2712
|
+
_$effect(_p$ => {
|
|
2713
|
+
var _v$50 = chatMessages().cancelReply,
|
|
2714
|
+
_v$51 = chatMessages().cancelReply;
|
|
2715
|
+
_v$50 !== _p$.e && _$setAttribute(_el$171, "aria-label", _p$.e = _v$50);
|
|
2716
|
+
_v$51 !== _p$.t && _$setAttribute(_el$171, "title", _p$.t = _v$51);
|
|
2717
|
+
return _p$;
|
|
2718
|
+
}, {
|
|
2719
|
+
e: undefined,
|
|
2720
|
+
t: undefined
|
|
2721
|
+
});
|
|
2722
|
+
_$runHydrationEvents();
|
|
2723
|
+
return _el$170;
|
|
2724
|
+
})()
|
|
2725
|
+
}), _el$123, _co$28);
|
|
2726
|
+
_$insert(_el$96, _$createComponent(Show, {
|
|
2532
2727
|
get when() {
|
|
2533
2728
|
return attachments().length > 0;
|
|
2534
2729
|
},
|
|
2535
2730
|
get children() {
|
|
2536
|
-
var _el$
|
|
2537
|
-
_$insert(_el$
|
|
2731
|
+
var _el$98 = _$getNextElement(_tmpl$26);
|
|
2732
|
+
_$insert(_el$98, _$createComponent(For, {
|
|
2538
2733
|
get each() {
|
|
2539
2734
|
return attachments();
|
|
2540
2735
|
},
|
|
2541
2736
|
children: attachment => (() => {
|
|
2542
|
-
var _el$
|
|
2543
|
-
_el$
|
|
2544
|
-
_el$
|
|
2545
|
-
[_el$
|
|
2546
|
-
_el$
|
|
2547
|
-
[_el$
|
|
2548
|
-
_el$
|
|
2549
|
-
[_el$
|
|
2550
|
-
_$insert(_el$
|
|
2737
|
+
var _el$176 = _$getNextElement(_tmpl$43),
|
|
2738
|
+
_el$177 = _el$176.firstChild,
|
|
2739
|
+
_el$178 = _el$177.firstChild,
|
|
2740
|
+
[_el$179, _co$42] = _$getNextMarker(_el$178.nextSibling),
|
|
2741
|
+
_el$180 = _el$179.nextSibling,
|
|
2742
|
+
[_el$181, _co$43] = _$getNextMarker(_el$180.nextSibling),
|
|
2743
|
+
_el$183 = _el$177.nextSibling,
|
|
2744
|
+
[_el$184, _co$44] = _$getNextMarker(_el$183.nextSibling);
|
|
2745
|
+
_$insert(_el$177, _$createComponent(Show, {
|
|
2551
2746
|
get when() {
|
|
2552
2747
|
return attachment.href;
|
|
2553
2748
|
},
|
|
2554
2749
|
get fallback() {
|
|
2555
2750
|
return (() => {
|
|
2556
|
-
var _el$
|
|
2557
|
-
_el$
|
|
2558
|
-
[_el$
|
|
2559
|
-
_el$
|
|
2560
|
-
[_el$
|
|
2561
|
-
_$insert(_el$
|
|
2751
|
+
var _el$185 = _$getNextElement(_tmpl$45),
|
|
2752
|
+
_el$187 = _el$185.firstChild,
|
|
2753
|
+
[_el$188, _co$45] = _$getNextMarker(_el$187.nextSibling),
|
|
2754
|
+
_el$189 = _el$188.nextSibling,
|
|
2755
|
+
[_el$190, _co$46] = _$getNextMarker(_el$189.nextSibling);
|
|
2756
|
+
_$insert(_el$185, _$createComponent(Show, {
|
|
2562
2757
|
get when() {
|
|
2563
2758
|
return _$memo(() => attachment.kind === "image")() && attachment.previewUrl;
|
|
2564
2759
|
},
|
|
2565
2760
|
get fallback() {
|
|
2566
2761
|
return (() => {
|
|
2567
|
-
var _el$
|
|
2568
|
-
_$effect(() => _$className(_el$
|
|
2569
|
-
return _el$
|
|
2762
|
+
var _el$191 = _$getNextElement(_tmpl$3);
|
|
2763
|
+
_$effect(() => _$className(_el$191, attachmentIcon(attachment)));
|
|
2764
|
+
return _el$191;
|
|
2570
2765
|
})();
|
|
2571
2766
|
},
|
|
2572
2767
|
get children() {
|
|
2573
|
-
var _el$
|
|
2768
|
+
var _el$186 = _$getNextElement(_tmpl$44);
|
|
2574
2769
|
_$effect(_p$ => {
|
|
2575
|
-
var _v$
|
|
2576
|
-
_v$
|
|
2577
|
-
_v$
|
|
2578
|
-
_v$
|
|
2770
|
+
var _v$54 = attachment.previewUrl,
|
|
2771
|
+
_v$55 = attachment.alt ?? "";
|
|
2772
|
+
_v$54 !== _p$.e && _$setAttribute(_el$186, "src", _p$.e = _v$54);
|
|
2773
|
+
_v$55 !== _p$.t && _$setAttribute(_el$186, "alt", _p$.t = _v$55);
|
|
2579
2774
|
return _p$;
|
|
2580
2775
|
}, {
|
|
2581
2776
|
e: undefined,
|
|
2582
2777
|
t: undefined
|
|
2583
2778
|
});
|
|
2584
|
-
return _el$
|
|
2779
|
+
return _el$186;
|
|
2585
2780
|
}
|
|
2586
|
-
}), _el$
|
|
2587
|
-
_$insert(_el$
|
|
2588
|
-
return _el$
|
|
2781
|
+
}), _el$188, _co$45);
|
|
2782
|
+
_$insert(_el$185, () => renderAttachmentCopy(attachment), _el$190, _co$46);
|
|
2783
|
+
return _el$185;
|
|
2589
2784
|
})();
|
|
2590
2785
|
},
|
|
2591
2786
|
children: href => (() => {
|
|
2592
|
-
var _el$
|
|
2593
|
-
_el$
|
|
2594
|
-
[_el$
|
|
2595
|
-
_el$
|
|
2596
|
-
[_el$
|
|
2597
|
-
_$insert(_el$
|
|
2787
|
+
var _el$192 = _$getNextElement(_tmpl$46),
|
|
2788
|
+
_el$194 = _el$192.firstChild,
|
|
2789
|
+
[_el$195, _co$47] = _$getNextMarker(_el$194.nextSibling),
|
|
2790
|
+
_el$196 = _el$195.nextSibling,
|
|
2791
|
+
[_el$197, _co$48] = _$getNextMarker(_el$196.nextSibling);
|
|
2792
|
+
_$insert(_el$192, _$createComponent(Show, {
|
|
2598
2793
|
get when() {
|
|
2599
2794
|
return _$memo(() => attachment.kind === "image")() && attachment.previewUrl;
|
|
2600
2795
|
},
|
|
2601
2796
|
get fallback() {
|
|
2602
2797
|
return (() => {
|
|
2603
|
-
var _el$
|
|
2604
|
-
_$effect(() => _$className(_el$
|
|
2605
|
-
return _el$
|
|
2798
|
+
var _el$198 = _$getNextElement(_tmpl$3);
|
|
2799
|
+
_$effect(() => _$className(_el$198, attachmentIcon(attachment)));
|
|
2800
|
+
return _el$198;
|
|
2606
2801
|
})();
|
|
2607
2802
|
},
|
|
2608
2803
|
get children() {
|
|
2609
|
-
var _el$
|
|
2804
|
+
var _el$193 = _$getNextElement(_tmpl$44);
|
|
2610
2805
|
_$effect(_p$ => {
|
|
2611
|
-
var _v$
|
|
2612
|
-
_v$
|
|
2613
|
-
_v$
|
|
2614
|
-
_v$
|
|
2806
|
+
var _v$56 = attachment.previewUrl,
|
|
2807
|
+
_v$57 = attachment.alt ?? "";
|
|
2808
|
+
_v$56 !== _p$.e && _$setAttribute(_el$193, "src", _p$.e = _v$56);
|
|
2809
|
+
_v$57 !== _p$.t && _$setAttribute(_el$193, "alt", _p$.t = _v$57);
|
|
2615
2810
|
return _p$;
|
|
2616
2811
|
}, {
|
|
2617
2812
|
e: undefined,
|
|
2618
2813
|
t: undefined
|
|
2619
2814
|
});
|
|
2620
|
-
return _el$
|
|
2815
|
+
return _el$193;
|
|
2621
2816
|
}
|
|
2622
|
-
}), _el$
|
|
2623
|
-
_$insert(_el$
|
|
2817
|
+
}), _el$195, _co$47);
|
|
2818
|
+
_$insert(_el$192, () => renderAttachmentCopy(attachment), _el$197, _co$48);
|
|
2624
2819
|
_$effect(_p$ => {
|
|
2625
|
-
var _v$
|
|
2626
|
-
_v$
|
|
2820
|
+
var _v$58 = href(),
|
|
2821
|
+
_v$59 = chatMessages().openInNewTab({
|
|
2627
2822
|
name: attachment.name
|
|
2628
2823
|
});
|
|
2629
|
-
_v$
|
|
2630
|
-
_v$
|
|
2824
|
+
_v$58 !== _p$.e && _$setAttribute(_el$192, "href", _p$.e = _v$58);
|
|
2825
|
+
_v$59 !== _p$.t && _$setAttribute(_el$192, "aria-label", _p$.t = _v$59);
|
|
2631
2826
|
return _p$;
|
|
2632
2827
|
}, {
|
|
2633
2828
|
e: undefined,
|
|
2634
2829
|
t: undefined
|
|
2635
2830
|
});
|
|
2636
|
-
return _el$
|
|
2831
|
+
return _el$192;
|
|
2637
2832
|
})()
|
|
2638
|
-
}), _el$
|
|
2639
|
-
_$insert(_el$
|
|
2833
|
+
}), _el$179, _co$42);
|
|
2834
|
+
_$insert(_el$177, _$createComponent(Show, {
|
|
2640
2835
|
get when() {
|
|
2641
2836
|
return attachment.action;
|
|
2642
2837
|
},
|
|
2643
2838
|
children: action => (() => {
|
|
2644
|
-
var _el$
|
|
2645
|
-
_el$
|
|
2646
|
-
[_el$
|
|
2647
|
-
_el$
|
|
2648
|
-
[_el$
|
|
2649
|
-
_el$
|
|
2650
|
-
_$insert(_el$
|
|
2839
|
+
var _el$199 = _$getNextElement(_tmpl$47),
|
|
2840
|
+
_el$200 = _el$199.firstChild,
|
|
2841
|
+
[_el$201, _co$49] = _$getNextMarker(_el$200.nextSibling),
|
|
2842
|
+
_el$202 = _el$201.nextSibling,
|
|
2843
|
+
[_el$203, _co$50] = _$getNextMarker(_el$202.nextSibling);
|
|
2844
|
+
_el$199.$$click = () => reportChatFailure(() => executeChatAction(action()), props.onError);
|
|
2845
|
+
_$insert(_el$199, _$createComponent(Show, {
|
|
2651
2846
|
get when() {
|
|
2652
2847
|
return action().icon;
|
|
2653
2848
|
},
|
|
2654
2849
|
children: icon => (() => {
|
|
2655
|
-
var _el$
|
|
2656
|
-
_$effect(() => _$className(_el$
|
|
2657
|
-
return _el$
|
|
2850
|
+
var _el$204 = _$getNextElement(_tmpl$3);
|
|
2851
|
+
_$effect(() => _$className(_el$204, icon()));
|
|
2852
|
+
return _el$204;
|
|
2658
2853
|
})()
|
|
2659
|
-
}), _el$
|
|
2660
|
-
_$insert(_el$
|
|
2661
|
-
_$effect(() => _$setProperty(_el$
|
|
2854
|
+
}), _el$201, _co$49);
|
|
2855
|
+
_$insert(_el$199, () => action().label, _el$203, _co$50);
|
|
2856
|
+
_$effect(() => _$setProperty(_el$199, "disabled", blocked() || action().disabled));
|
|
2662
2857
|
_$runHydrationEvents();
|
|
2663
|
-
return _el$
|
|
2858
|
+
return _el$199;
|
|
2664
2859
|
})()
|
|
2665
|
-
}), _el$
|
|
2666
|
-
_$insert(_el$
|
|
2860
|
+
}), _el$181, _co$43);
|
|
2861
|
+
_$insert(_el$176, _$createComponent(Show, {
|
|
2667
2862
|
get when() {
|
|
2668
2863
|
return props.onAttachmentsChange;
|
|
2669
2864
|
},
|
|
2670
2865
|
get children() {
|
|
2671
|
-
var _el$
|
|
2672
|
-
_el$
|
|
2866
|
+
var _el$182 = _$getNextElement(_tmpl$42);
|
|
2867
|
+
_el$182.$$click = () => setAttachments(attachments().filter(candidate => candidate.id !== attachment.id));
|
|
2673
2868
|
_$effect(_p$ => {
|
|
2674
|
-
var _v$
|
|
2869
|
+
var _v$52 = selectMessages().removeNamed({
|
|
2675
2870
|
name: attachment.name
|
|
2676
2871
|
}),
|
|
2677
|
-
_v$
|
|
2678
|
-
_v$
|
|
2679
|
-
_v$
|
|
2872
|
+
_v$53 = blocked();
|
|
2873
|
+
_v$52 !== _p$.e && _$setAttribute(_el$182, "aria-label", _p$.e = _v$52);
|
|
2874
|
+
_v$53 !== _p$.t && _$setProperty(_el$182, "disabled", _p$.t = _v$53);
|
|
2680
2875
|
return _p$;
|
|
2681
2876
|
}, {
|
|
2682
2877
|
e: undefined,
|
|
2683
2878
|
t: undefined
|
|
2684
2879
|
});
|
|
2685
2880
|
_$runHydrationEvents();
|
|
2686
|
-
return _el$
|
|
2881
|
+
return _el$182;
|
|
2687
2882
|
}
|
|
2688
|
-
}), _el$
|
|
2689
|
-
_$effect(() => _el$
|
|
2690
|
-
return _el$
|
|
2883
|
+
}), _el$184, _co$44);
|
|
2884
|
+
_$effect(() => _el$177.classList.toggle("k2b-chat-composer__attachment-content--action", !!Boolean(attachment.action)));
|
|
2885
|
+
return _el$176;
|
|
2691
2886
|
})()
|
|
2692
2887
|
}));
|
|
2693
|
-
_$effect(() => _$setAttribute(_el$
|
|
2694
|
-
return _el$
|
|
2888
|
+
_$effect(() => _$setAttribute(_el$98, "aria-label", chatMessages().attachments));
|
|
2889
|
+
return _el$98;
|
|
2695
2890
|
}
|
|
2696
|
-
}), _el$
|
|
2697
|
-
_$insert(_el$
|
|
2891
|
+
}), _el$125, _co$29);
|
|
2892
|
+
_$insert(_el$96, _$createComponent(Show, {
|
|
2698
2893
|
get when() {
|
|
2699
2894
|
return conversation();
|
|
2700
2895
|
},
|
|
@@ -2704,38 +2899,38 @@ export function ChatComposer(props) {
|
|
|
2704
2899
|
return props.error;
|
|
2705
2900
|
},
|
|
2706
2901
|
get children() {
|
|
2707
|
-
var _el$
|
|
2708
|
-
_el$
|
|
2709
|
-
_el$
|
|
2710
|
-
[_el$
|
|
2711
|
-
_$insert(_el$
|
|
2712
|
-
return _el$
|
|
2902
|
+
var _el$205 = _$getNextElement(_tmpl$27),
|
|
2903
|
+
_el$206 = _el$205.firstChild,
|
|
2904
|
+
_el$207 = _el$206.nextSibling,
|
|
2905
|
+
[_el$208, _co$51] = _$getNextMarker(_el$207.nextSibling);
|
|
2906
|
+
_$insert(_el$205, () => props.error, _el$208, _co$51);
|
|
2907
|
+
return _el$205;
|
|
2713
2908
|
}
|
|
2714
2909
|
}), _$memo(formatRow), (() => {
|
|
2715
|
-
var _el$
|
|
2716
|
-
_$insert(_el$
|
|
2910
|
+
var _el$209 = _$getNextElement(_tmpl$48);
|
|
2911
|
+
_$insert(_el$209, _$createComponent(Show, {
|
|
2717
2912
|
get when() {
|
|
2718
2913
|
return footer();
|
|
2719
2914
|
},
|
|
2720
2915
|
get fallback() {
|
|
2721
2916
|
return [(() => {
|
|
2722
|
-
var _el$
|
|
2723
|
-
_el$
|
|
2724
|
-
[_el$
|
|
2725
|
-
_el$
|
|
2726
|
-
[_el$
|
|
2727
|
-
_el$
|
|
2728
|
-
[_el$
|
|
2729
|
-
_el$
|
|
2730
|
-
[_el$
|
|
2731
|
-
_el$
|
|
2732
|
-
[_el$
|
|
2733
|
-
_el$
|
|
2734
|
-
[_el$
|
|
2735
|
-
_el$
|
|
2736
|
-
[_el$
|
|
2737
|
-
_$insert(_el$
|
|
2738
|
-
_$insert(_el$
|
|
2917
|
+
var _el$210 = _$getNextElement(_tmpl$49),
|
|
2918
|
+
_el$211 = _el$210.firstChild,
|
|
2919
|
+
[_el$212, _co$52] = _$getNextMarker(_el$211.nextSibling),
|
|
2920
|
+
_el$213 = _el$212.nextSibling,
|
|
2921
|
+
[_el$214, _co$53] = _$getNextMarker(_el$213.nextSibling),
|
|
2922
|
+
_el$215 = _el$214.nextSibling,
|
|
2923
|
+
[_el$216, _co$54] = _$getNextMarker(_el$215.nextSibling),
|
|
2924
|
+
_el$217 = _el$216.nextSibling,
|
|
2925
|
+
[_el$218, _co$55] = _$getNextMarker(_el$217.nextSibling),
|
|
2926
|
+
_el$219 = _el$218.nextSibling,
|
|
2927
|
+
[_el$220, _co$56] = _$getNextMarker(_el$219.nextSibling),
|
|
2928
|
+
_el$221 = _el$220.nextSibling,
|
|
2929
|
+
[_el$222, _co$57] = _$getNextMarker(_el$221.nextSibling),
|
|
2930
|
+
_el$223 = _el$222.nextSibling,
|
|
2931
|
+
[_el$224, _co$58] = _$getNextMarker(_el$223.nextSibling);
|
|
2932
|
+
_$insert(_el$210, () => props.footerTools, _el$212, _co$52);
|
|
2933
|
+
_$insert(_el$210, _$createComponent(Show, {
|
|
2739
2934
|
get when() {
|
|
2740
2935
|
return addOpensCommands();
|
|
2741
2936
|
},
|
|
@@ -2752,11 +2947,11 @@ export function ChatComposer(props) {
|
|
|
2752
2947
|
get children() {
|
|
2753
2948
|
return addSearchButton();
|
|
2754
2949
|
}
|
|
2755
|
-
}), _el$
|
|
2756
|
-
_$insert(_el$
|
|
2757
|
-
_$insert(_el$
|
|
2758
|
-
_$insert(_el$
|
|
2759
|
-
_$insert(_el$
|
|
2950
|
+
}), _el$214, _co$53);
|
|
2951
|
+
_$insert(_el$210, fileInput, _el$216, _co$54);
|
|
2952
|
+
_$insert(_el$210, formatToggle, _el$218, _co$55);
|
|
2953
|
+
_$insert(_el$210, emojiButton, _el$220, _co$56);
|
|
2954
|
+
_$insert(_el$210, _$createComponent(Show, {
|
|
2760
2955
|
get when() {
|
|
2761
2956
|
return (props.models?.length ?? 0) > 0;
|
|
2762
2957
|
},
|
|
@@ -2802,22 +2997,22 @@ export function ChatComposer(props) {
|
|
|
2802
2997
|
}
|
|
2803
2998
|
});
|
|
2804
2999
|
}
|
|
2805
|
-
}), _el$
|
|
2806
|
-
_$insert(_el$
|
|
2807
|
-
return _el$
|
|
3000
|
+
}), _el$222, _co$57);
|
|
3001
|
+
_$insert(_el$210, () => props.modelDetails, _el$224, _co$58);
|
|
3002
|
+
return _el$210;
|
|
2808
3003
|
})(), (() => {
|
|
2809
|
-
var _el$
|
|
2810
|
-
_el$
|
|
2811
|
-
[_el$
|
|
2812
|
-
_el$
|
|
2813
|
-
[_el$
|
|
2814
|
-
_el$
|
|
2815
|
-
[_el$
|
|
2816
|
-
_el$
|
|
2817
|
-
[_el$
|
|
2818
|
-
_el$
|
|
2819
|
-
[_el$
|
|
2820
|
-
_$insert(_el$
|
|
3004
|
+
var _el$225 = _$getNextElement(_tmpl$50),
|
|
3005
|
+
_el$226 = _el$225.firstChild,
|
|
3006
|
+
[_el$227, _co$59] = _$getNextMarker(_el$226.nextSibling),
|
|
3007
|
+
_el$228 = _el$227.nextSibling,
|
|
3008
|
+
[_el$229, _co$60] = _$getNextMarker(_el$228.nextSibling),
|
|
3009
|
+
_el$230 = _el$229.nextSibling,
|
|
3010
|
+
[_el$231, _co$61] = _$getNextMarker(_el$230.nextSibling),
|
|
3011
|
+
_el$232 = _el$231.nextSibling,
|
|
3012
|
+
[_el$233, _co$62] = _$getNextMarker(_el$232.nextSibling),
|
|
3013
|
+
_el$234 = _el$233.nextSibling,
|
|
3014
|
+
[_el$235, _co$63] = _$getNextMarker(_el$234.nextSibling);
|
|
3015
|
+
_$insert(_el$225, _$createComponent(For, {
|
|
2821
3016
|
get each() {
|
|
2822
3017
|
return props.contextActions;
|
|
2823
3018
|
},
|
|
@@ -2841,13 +3036,13 @@ export function ChatComposer(props) {
|
|
|
2841
3036
|
},
|
|
2842
3037
|
onClick: () => reportChatFailure(() => executeChatAction(action), props.onError),
|
|
2843
3038
|
get children() {
|
|
2844
|
-
var _el$
|
|
2845
|
-
_$effect(() => _$className(_el$
|
|
2846
|
-
return _el$
|
|
3039
|
+
var _el$236 = _$getNextElement(_tmpl$3);
|
|
3040
|
+
_$effect(() => _$className(_el$236, action.icon ?? "ti ti-dots"));
|
|
3041
|
+
return _el$236;
|
|
2847
3042
|
}
|
|
2848
3043
|
})
|
|
2849
|
-
}), _el$
|
|
2850
|
-
_$insert(_el$
|
|
3044
|
+
}), _el$227, _co$59);
|
|
3045
|
+
_$insert(_el$225, _$createComponent(Show, {
|
|
2851
3046
|
get when() {
|
|
2852
3047
|
return _$memo(() => !!hasContextUsage())() ? props.contextUsage ?? {} : undefined;
|
|
2853
3048
|
},
|
|
@@ -2859,18 +3054,18 @@ export function ChatComposer(props) {
|
|
|
2859
3054
|
return props.onError;
|
|
2860
3055
|
}
|
|
2861
3056
|
}))
|
|
2862
|
-
}), _el$
|
|
2863
|
-
_$insert(_el$
|
|
2864
|
-
_$insert(_el$
|
|
2865
|
-
_$insert(_el$
|
|
2866
|
-
return _el$
|
|
3057
|
+
}), _el$229, _co$60);
|
|
3058
|
+
_$insert(_el$225, () => props.submitTools, _el$231, _co$61);
|
|
3059
|
+
_$insert(_el$225, microphoneControl, _el$233, _co$62);
|
|
3060
|
+
_$insert(_el$225, sendControl, _el$235, _co$63);
|
|
3061
|
+
return _el$225;
|
|
2867
3062
|
})()];
|
|
2868
3063
|
},
|
|
2869
3064
|
get children() {
|
|
2870
3065
|
return footer();
|
|
2871
3066
|
}
|
|
2872
3067
|
}));
|
|
2873
|
-
return _el$
|
|
3068
|
+
return _el$209;
|
|
2874
3069
|
})()];
|
|
2875
3070
|
},
|
|
2876
3071
|
get children() {
|
|
@@ -2879,43 +3074,43 @@ export function ChatComposer(props) {
|
|
|
2879
3074
|
return props.error;
|
|
2880
3075
|
},
|
|
2881
3076
|
get children() {
|
|
2882
|
-
var _el$
|
|
2883
|
-
_el$
|
|
2884
|
-
_el$
|
|
2885
|
-
[_el$
|
|
2886
|
-
_$insert(_el$
|
|
2887
|
-
return _el$
|
|
3077
|
+
var _el$99 = _$getNextElement(_tmpl$27),
|
|
3078
|
+
_el$100 = _el$99.firstChild,
|
|
3079
|
+
_el$101 = _el$100.nextSibling,
|
|
3080
|
+
[_el$102, _co$19] = _$getNextMarker(_el$101.nextSibling);
|
|
3081
|
+
_$insert(_el$99, () => props.error, _el$102, _co$19);
|
|
3082
|
+
return _el$99;
|
|
2888
3083
|
}
|
|
2889
3084
|
}), _$memo(() => formatRow()), (() => {
|
|
2890
|
-
var _el$
|
|
2891
|
-
_el$
|
|
2892
|
-
[_el$
|
|
2893
|
-
_el$
|
|
2894
|
-
[_el$
|
|
2895
|
-
_el$
|
|
2896
|
-
_el$
|
|
2897
|
-
[_el$
|
|
2898
|
-
_el$
|
|
2899
|
-
_el$
|
|
2900
|
-
[_el$
|
|
2901
|
-
_el$
|
|
2902
|
-
[_el$
|
|
2903
|
-
_el$
|
|
2904
|
-
[_el$
|
|
2905
|
-
_el$
|
|
2906
|
-
[_el$
|
|
2907
|
-
_$insert(_el$
|
|
2908
|
-
_$insert(_el$
|
|
2909
|
-
_$insert(_el$
|
|
2910
|
-
_$insert(_el$
|
|
2911
|
-
_$insert(_el$
|
|
2912
|
-
_$insert(_el$
|
|
2913
|
-
_$insert(_el$
|
|
2914
|
-
return _el$
|
|
3085
|
+
var _el$103 = _$getNextElement(_tmpl$28),
|
|
3086
|
+
_el$114 = _el$103.firstChild,
|
|
3087
|
+
[_el$115, _co$24] = _$getNextMarker(_el$114.nextSibling),
|
|
3088
|
+
_el$116 = _el$115.nextSibling,
|
|
3089
|
+
[_el$117, _co$25] = _$getNextMarker(_el$116.nextSibling),
|
|
3090
|
+
_el$104 = _el$117.nextSibling,
|
|
3091
|
+
_el$112 = _el$104.firstChild,
|
|
3092
|
+
[_el$113, _co$23] = _$getNextMarker(_el$112.nextSibling),
|
|
3093
|
+
_el$105 = _el$113.nextSibling,
|
|
3094
|
+
_el$106 = _el$105.firstChild,
|
|
3095
|
+
[_el$107, _co$20] = _$getNextMarker(_el$106.nextSibling),
|
|
3096
|
+
_el$108 = _el$107.nextSibling,
|
|
3097
|
+
[_el$109, _co$21] = _$getNextMarker(_el$108.nextSibling),
|
|
3098
|
+
_el$110 = _el$109.nextSibling,
|
|
3099
|
+
[_el$111, _co$22] = _$getNextMarker(_el$110.nextSibling),
|
|
3100
|
+
_el$118 = _el$104.nextSibling,
|
|
3101
|
+
[_el$119, _co$26] = _$getNextMarker(_el$118.nextSibling);
|
|
3102
|
+
_$insert(_el$103, attachControl, _el$115, _co$24);
|
|
3103
|
+
_$insert(_el$103, fileInput, _el$117, _co$25);
|
|
3104
|
+
_$insert(_el$104, field, _el$113, _co$23);
|
|
3105
|
+
_$insert(_el$105, formatToggle, _el$107, _co$20);
|
|
3106
|
+
_$insert(_el$105, emojiButton, _el$109, _co$21);
|
|
3107
|
+
_$insert(_el$105, microphoneControl, _el$111, _co$22);
|
|
3108
|
+
_$insert(_el$103, sendControl, _el$119, _co$26);
|
|
3109
|
+
return _el$103;
|
|
2915
3110
|
})()];
|
|
2916
3111
|
}
|
|
2917
|
-
}), _el$
|
|
2918
|
-
_$insert(_el$
|
|
3112
|
+
}), _el$127, _co$30);
|
|
3113
|
+
_$insert(_el$96, _$createComponent(Show, {
|
|
2919
3114
|
get when() {
|
|
2920
3115
|
return props.fileSelection;
|
|
2921
3116
|
},
|
|
@@ -2934,60 +3129,60 @@ export function ChatComposer(props) {
|
|
|
2934
3129
|
},
|
|
2935
3130
|
onDrop: files => void runFiles(files)
|
|
2936
3131
|
})
|
|
2937
|
-
}), _el$
|
|
2938
|
-
_$insert(_el$
|
|
3132
|
+
}), _el$129, _co$31);
|
|
3133
|
+
_$insert(_el$130, _$createComponent(Show, {
|
|
2939
3134
|
get when() {
|
|
2940
3135
|
return suggestionAnnouncement();
|
|
2941
3136
|
},
|
|
2942
3137
|
keyed: true,
|
|
2943
3138
|
children: announced => (() => {
|
|
2944
|
-
var _el$
|
|
2945
|
-
_$insert(_el$
|
|
2946
|
-
return _el$
|
|
3139
|
+
var _el$237 = _$getNextElement(_tmpl$10);
|
|
3140
|
+
_$insert(_el$237, () => announced.text);
|
|
3141
|
+
return _el$237;
|
|
2947
3142
|
})()
|
|
2948
3143
|
}));
|
|
2949
|
-
_$insert(_el$
|
|
3144
|
+
_$insert(_el$131, _$createComponent(Show, {
|
|
2950
3145
|
get when() {
|
|
2951
3146
|
return _$memo(() => !!!suggestionsOpen())() && commandStatus();
|
|
2952
3147
|
},
|
|
2953
3148
|
children: status => (() => {
|
|
2954
|
-
var _el$
|
|
2955
|
-
_el$
|
|
2956
|
-
_el$
|
|
2957
|
-
_$insert(_el$
|
|
3149
|
+
var _el$238 = _$getNextElement(_tmpl$51),
|
|
3150
|
+
_el$239 = _el$238.firstChild,
|
|
3151
|
+
_el$240 = _el$239.nextSibling;
|
|
3152
|
+
_$insert(_el$240, () => status().text);
|
|
2958
3153
|
_$effect(_p$ => {
|
|
2959
|
-
var _v$
|
|
2960
|
-
_v$
|
|
2961
|
-
_v$
|
|
2962
|
-
_v$
|
|
3154
|
+
var _v$60 = status().tone,
|
|
3155
|
+
_v$61 = status().tone === "busy" ? "ti ti-loader-2 k2b-spin" : status().tone === "done" ? "ti ti-check" : "ti ti-alert-circle";
|
|
3156
|
+
_v$60 !== _p$.e && _$setAttribute(_el$238, "data-tone", _p$.e = _v$60);
|
|
3157
|
+
_v$61 !== _p$.t && _$className(_el$239, _p$.t = _v$61);
|
|
2963
3158
|
return _p$;
|
|
2964
3159
|
}, {
|
|
2965
3160
|
e: undefined,
|
|
2966
3161
|
t: undefined
|
|
2967
3162
|
});
|
|
2968
|
-
return _el$
|
|
3163
|
+
return _el$238;
|
|
2969
3164
|
})()
|
|
2970
|
-
}), _el$
|
|
2971
|
-
_$insert(_el$
|
|
3165
|
+
}), _el$133, _co$32);
|
|
3166
|
+
_$insert(_el$131, _$createComponent(Show, {
|
|
2972
3167
|
get when() {
|
|
2973
3168
|
return _$memo(() => !!suggestionsOpen())() && announcement();
|
|
2974
3169
|
},
|
|
2975
3170
|
keyed: true,
|
|
2976
3171
|
children: announced => (() => {
|
|
2977
|
-
var _el$
|
|
2978
|
-
_$insert(_el$
|
|
2979
|
-
return _el$
|
|
3172
|
+
var _el$241 = _$getNextElement(_tmpl$52);
|
|
3173
|
+
_$insert(_el$241, () => announced.text);
|
|
3174
|
+
return _el$241;
|
|
2980
3175
|
})()
|
|
2981
|
-
}), _el$
|
|
3176
|
+
}), _el$135, _co$33);
|
|
2982
3177
|
_$effect(_p$ => {
|
|
2983
3178
|
var _v$34 = `k2b-chat-composer ${props.class ?? ""}`,
|
|
2984
3179
|
_v$35 = running() ? "true" : undefined,
|
|
2985
3180
|
_v$36 = conversation() ? "conversation" : undefined,
|
|
2986
3181
|
_v$37 = props.label ?? chatMessages().messageComposer;
|
|
2987
|
-
_v$34 !== _p$.e && _$className(_el$
|
|
2988
|
-
_v$35 !== _p$.t && _$setAttribute(_el$
|
|
2989
|
-
_v$36 !== _p$.a && _$setAttribute(_el$
|
|
2990
|
-
_v$37 !== _p$.o && _$setAttribute(_el$
|
|
3182
|
+
_v$34 !== _p$.e && _$className(_el$96, _p$.e = _v$34);
|
|
3183
|
+
_v$35 !== _p$.t && _$setAttribute(_el$96, "data-running", _p$.t = _v$35);
|
|
3184
|
+
_v$36 !== _p$.a && _$setAttribute(_el$96, "data-variant", _p$.a = _v$36);
|
|
3185
|
+
_v$37 !== _p$.o && _$setAttribute(_el$96, "aria-label", _p$.o = _v$37);
|
|
2991
3186
|
return _p$;
|
|
2992
3187
|
}, {
|
|
2993
3188
|
e: undefined,
|
|
@@ -2995,7 +3190,7 @@ export function ChatComposer(props) {
|
|
|
2995
3190
|
a: undefined,
|
|
2996
3191
|
o: undefined
|
|
2997
3192
|
});
|
|
2998
|
-
return _el$
|
|
3193
|
+
return _el$57;
|
|
2999
3194
|
})();
|
|
3000
3195
|
}
|
|
3001
3196
|
_$delegateEvents(["input", "click", "keyup", "beforeinput", "keydown", "mousedown", "focusout"]);
|