@k2b/ui 0.17.0 → 0.19.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/README.md +3 -2
- package/dist/browser/actions/ContextMenu.js +3 -1
- package/dist/browser/actions/ContextMenu.js.map +1 -1
- package/dist/browser/actions/Dropdown.js +91 -46
- package/dist/browser/actions/Dropdown.js.map +1 -1
- package/dist/browser/actions/FilterChip.js +4 -1
- package/dist/browser/actions/FilterChip.js.map +1 -1
- package/dist/browser/chat/ChatComposer.js +1311 -565
- package/dist/browser/chat/ChatComposer.js.map +1 -1
- package/dist/browser/chat/ChatPrimitives.js +9 -6
- package/dist/browser/chat/ChatPrimitives.js.map +1 -1
- package/dist/browser/chat/chat-behavior.js +9 -0
- package/dist/browser/chat/chat-behavior.js.map +1 -1
- package/dist/browser/chat/index.js.map +1 -1
- package/dist/browser/chat/types.js.map +1 -1
- package/dist/browser/content/Calendar.js +579 -533
- package/dist/browser/content/Calendar.js.map +1 -1
- package/dist/browser/content/FileView.js +62 -36
- package/dist/browser/content/FileView.js.map +1 -1
- package/dist/browser/content/Lightbox.js +76 -40
- package/dist/browser/content/Lightbox.js.map +1 -1
- package/dist/browser/content/MarkdownView.js +9 -3
- package/dist/browser/content/MarkdownView.js.map +1 -1
- package/dist/browser/content/PdfPreview.js +146 -79
- package/dist/browser/content/PdfPreview.js.map +1 -1
- package/dist/browser/content/Timeline.js +1038 -0
- package/dist/browser/content/Timeline.js.map +1 -0
- package/dist/browser/content/VideoPlayer.js +299 -0
- package/dist/browser/content/VideoPlayer.js.map +1 -0
- package/dist/browser/content/chart-inspection.js +7 -2
- package/dist/browser/content/chart-inspection.js.map +1 -1
- package/dist/browser/content/file-view-preview.js +2 -2
- package/dist/browser/content/file-view-preview.js.map +1 -1
- package/dist/browser/content/index.js +3 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/content/markdown-links.js +178 -0
- package/dist/browser/content/markdown-links.js.map +1 -0
- package/dist/browser/content/timeline-model.js +579 -0
- package/dist/browser/content/timeline-model.js.map +1 -0
- package/dist/browser/feedback/dialog-core.js +26 -14
- package/dist/browser/feedback/dialog-core.js.map +1 -1
- package/dist/browser/inputs/ChoiceChips.js +66 -0
- package/dist/browser/inputs/ChoiceChips.js.map +1 -0
- package/dist/browser/inputs/ChoiceGroups.js +53 -12
- package/dist/browser/inputs/ChoiceGroups.js.map +1 -1
- package/dist/browser/inputs/FileDropTarget.js +129 -0
- package/dist/browser/inputs/FileDropTarget.js.map +1 -0
- package/dist/browser/inputs/FileInputs.js +84 -43
- package/dist/browser/inputs/FileInputs.js.map +1 -1
- package/dist/browser/inputs/SignatureInput.js +558 -0
- package/dist/browser/inputs/SignatureInput.js.map +1 -0
- package/dist/browser/inputs/emoji/EmojiPicker.js +841 -0
- package/dist/browser/inputs/emoji/EmojiPicker.js.map +1 -0
- package/dist/browser/inputs/emoji/emoji-data.js +1903 -0
- package/dist/browser/inputs/emoji/emoji-data.js.map +1 -0
- package/dist/browser/inputs/emoji/emoji-index.js +209 -0
- package/dist/browser/inputs/emoji/emoji-index.js.map +1 -0
- package/dist/browser/inputs/emoji/emoji-messages.js +64 -0
- package/dist/browser/inputs/emoji/emoji-messages.js.map +1 -0
- package/dist/browser/inputs/file-drop.js +338 -0
- package/dist/browser/inputs/file-drop.js.map +1 -0
- package/dist/browser/inputs/index.js +6 -0
- package/dist/browser/inputs/index.js.map +1 -1
- package/dist/browser/inputs/markdown/MarkdownEditor.js +72 -78
- package/dist/browser/inputs/markdown/MarkdownEditor.js.map +1 -1
- package/dist/browser/inputs/markdown/actions.js +48 -2
- package/dist/browser/inputs/markdown/actions.js.map +1 -1
- package/dist/browser/inputs/markdown/code-zone.js +38 -2
- package/dist/browser/inputs/markdown/code-zone.js.map +1 -1
- package/dist/browser/inputs/signature-messages.js +39 -0
- package/dist/browser/inputs/signature-messages.js.map +1 -0
- package/dist/browser/inputs/signature.js +208 -0
- package/dist/browser/inputs/signature.js.map +1 -0
- package/dist/browser/internal/render-error.js +49 -0
- package/dist/browser/internal/render-error.js.map +1 -0
- package/dist/browser/intl/messages.js +205 -4
- package/dist/browser/intl/messages.js.map +1 -1
- package/dist/browser/layout/AppWorkspace.js +483 -218
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/FloatingWindow.js +4 -1
- package/dist/browser/layout/FloatingWindow.js.map +1 -1
- package/dist/browser/layout/Navigation.js +274 -197
- package/dist/browser/layout/Navigation.js.map +1 -1
- package/dist/browser/layout/SidebarItemPreview.js +5 -1
- package/dist/browser/layout/SidebarItemPreview.js.map +1 -1
- package/dist/browser/layout/index.js.map +1 -1
- package/dist/browser/layout/navigation-model.js +2 -0
- package/dist/browser/layout/navigation-model.js.map +1 -1
- package/dist/browser/surfaces/NoticeCard.js +47 -44
- package/dist/browser/surfaces/NoticeCard.js.map +1 -1
- package/dist/browser/surfaces/ResourceCard.js +212 -0
- package/dist/browser/surfaces/ResourceCard.js.map +1 -0
- package/dist/browser/surfaces/index.js +1 -0
- package/dist/browser/surfaces/index.js.map +1 -1
- package/dist/licenses/emojibase-data.txt +21 -0
- package/dist/ssr/actions/ContextMenu.js +3 -1
- package/dist/ssr/actions/ContextMenu.js.map +1 -1
- package/dist/ssr/actions/Dropdown.js +49 -12
- package/dist/ssr/actions/Dropdown.js.map +1 -1
- package/dist/ssr/actions/FilterChip.js +4 -1
- package/dist/ssr/actions/FilterChip.js.map +1 -1
- package/dist/ssr/chat/ChatComposer.js +823 -221
- package/dist/ssr/chat/ChatComposer.js.map +1 -1
- package/dist/ssr/chat/ChatPrimitives.js +9 -6
- package/dist/ssr/chat/ChatPrimitives.js.map +1 -1
- package/dist/ssr/chat/chat-behavior.js +9 -0
- package/dist/ssr/chat/chat-behavior.js.map +1 -1
- package/dist/ssr/chat/index.js.map +1 -1
- package/dist/ssr/chat/types.js.map +1 -1
- package/dist/ssr/content/Calendar.js +183 -142
- package/dist/ssr/content/Calendar.js.map +1 -1
- package/dist/ssr/content/FileView.js +30 -6
- package/dist/ssr/content/FileView.js.map +1 -1
- package/dist/ssr/content/Lightbox.js +19 -5
- package/dist/ssr/content/Lightbox.js.map +1 -1
- package/dist/ssr/content/MarkdownView.js +9 -3
- package/dist/ssr/content/MarkdownView.js.map +1 -1
- package/dist/ssr/content/PdfPreview.js +77 -36
- package/dist/ssr/content/PdfPreview.js.map +1 -1
- package/dist/ssr/content/Timeline.js +804 -0
- package/dist/ssr/content/Timeline.js.map +1 -0
- package/dist/ssr/content/VideoPlayer.js +228 -0
- package/dist/ssr/content/VideoPlayer.js.map +1 -0
- package/dist/ssr/content/chart-inspection.js +7 -2
- package/dist/ssr/content/chart-inspection.js.map +1 -1
- package/dist/ssr/content/file-view-preview.js +2 -2
- package/dist/ssr/content/file-view-preview.js.map +1 -1
- package/dist/ssr/content/index.js +3 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/content/markdown-links.js +178 -0
- package/dist/ssr/content/markdown-links.js.map +1 -0
- package/dist/ssr/content/timeline-model.js +579 -0
- package/dist/ssr/content/timeline-model.js.map +1 -0
- package/dist/ssr/feedback/dialog-core.js +26 -14
- package/dist/ssr/feedback/dialog-core.js.map +1 -1
- package/dist/ssr/inputs/ChoiceChips.js +66 -0
- package/dist/ssr/inputs/ChoiceChips.js.map +1 -0
- package/dist/ssr/inputs/ChoiceGroups.js +12 -4
- package/dist/ssr/inputs/ChoiceGroups.js.map +1 -1
- package/dist/ssr/inputs/FileDropTarget.js +103 -0
- package/dist/ssr/inputs/FileDropTarget.js.map +1 -0
- package/dist/ssr/inputs/FileInputs.js +49 -12
- package/dist/ssr/inputs/FileInputs.js.map +1 -1
- package/dist/ssr/inputs/SignatureInput.js +404 -0
- package/dist/ssr/inputs/SignatureInput.js.map +1 -0
- package/dist/ssr/inputs/emoji/EmojiPicker.js +551 -0
- package/dist/ssr/inputs/emoji/EmojiPicker.js.map +1 -0
- package/dist/ssr/inputs/emoji/emoji-data.js +1903 -0
- package/dist/ssr/inputs/emoji/emoji-data.js.map +1 -0
- package/dist/ssr/inputs/emoji/emoji-index.js +209 -0
- package/dist/ssr/inputs/emoji/emoji-index.js.map +1 -0
- package/dist/ssr/inputs/emoji/emoji-messages.js +64 -0
- package/dist/ssr/inputs/emoji/emoji-messages.js.map +1 -0
- package/dist/ssr/inputs/file-drop.js +338 -0
- package/dist/ssr/inputs/file-drop.js.map +1 -0
- package/dist/ssr/inputs/index.js +6 -0
- package/dist/ssr/inputs/index.js.map +1 -1
- package/dist/ssr/inputs/markdown/MarkdownEditor.js +14 -2
- package/dist/ssr/inputs/markdown/MarkdownEditor.js.map +1 -1
- package/dist/ssr/inputs/markdown/actions.js +48 -2
- package/dist/ssr/inputs/markdown/actions.js.map +1 -1
- package/dist/ssr/inputs/markdown/code-zone.js +38 -2
- package/dist/ssr/inputs/markdown/code-zone.js.map +1 -1
- package/dist/ssr/inputs/signature-messages.js +39 -0
- package/dist/ssr/inputs/signature-messages.js.map +1 -0
- package/dist/ssr/inputs/signature.js +208 -0
- package/dist/ssr/inputs/signature.js.map +1 -0
- package/dist/ssr/internal/render-error.js +49 -0
- package/dist/ssr/internal/render-error.js.map +1 -0
- package/dist/ssr/intl/messages.js +205 -4
- package/dist/ssr/intl/messages.js.map +1 -1
- package/dist/ssr/layout/AppWorkspace.js +264 -47
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/FloatingWindow.js +4 -1
- package/dist/ssr/layout/FloatingWindow.js.map +1 -1
- package/dist/ssr/layout/Navigation.js +169 -122
- package/dist/ssr/layout/Navigation.js.map +1 -1
- package/dist/ssr/layout/SidebarItemPreview.js +5 -1
- package/dist/ssr/layout/SidebarItemPreview.js.map +1 -1
- package/dist/ssr/layout/index.js.map +1 -1
- package/dist/ssr/layout/navigation-model.js +2 -0
- package/dist/ssr/layout/navigation-model.js.map +1 -1
- package/dist/ssr/surfaces/NoticeCard.js +17 -12
- package/dist/ssr/surfaces/NoticeCard.js.map +1 -1
- package/dist/ssr/surfaces/ResourceCard.js +115 -0
- package/dist/ssr/surfaces/ResourceCard.js.map +1 -0
- package/dist/ssr/surfaces/index.js +1 -0
- package/dist/ssr/surfaces/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/actions/Dropdown.d.ts +13 -1
- package/dist/types/actions/FilterChip.d.ts +5 -0
- package/dist/types/chat/ChatComposer.d.ts +24 -1
- package/dist/types/chat/ChatPrimitives.d.ts +1 -1
- package/dist/types/chat/chat-behavior.d.ts +15 -0
- package/dist/types/chat/index.d.ts +1 -1
- package/dist/types/chat/types.d.ts +34 -0
- package/dist/types/content/Calendar.d.ts +28 -8
- package/dist/types/content/Lightbox.d.ts +8 -0
- package/dist/types/content/Timeline.d.ts +49 -0
- package/dist/types/content/VideoPlayer.d.ts +41 -0
- package/dist/types/content/index.d.ts +6 -2
- package/dist/types/content/markdown-links.d.ts +66 -0
- package/dist/types/content/timeline-model.d.ts +148 -0
- package/dist/types/feedback/dialog-core.d.ts +1 -1
- package/dist/types/inputs/ChoiceChips.d.ts +20 -0
- package/dist/types/inputs/ChoiceGroups.d.ts +11 -2
- package/dist/types/inputs/FileDropTarget.d.ts +23 -0
- package/dist/types/inputs/FileInputs.d.ts +8 -0
- package/dist/types/inputs/SignatureInput.d.ts +22 -0
- package/dist/types/inputs/emoji/EmojiPicker.d.ts +42 -0
- package/dist/types/inputs/emoji/emoji-data.d.ts +2 -0
- package/dist/types/inputs/emoji/emoji-index.d.ts +109 -0
- package/dist/types/inputs/emoji/emoji-messages.d.ts +30 -0
- package/dist/types/inputs/file-drop.d.ts +80 -0
- package/dist/types/inputs/index.d.ts +12 -0
- package/dist/types/inputs/markdown/actions.d.ts +4 -0
- package/dist/types/inputs/markdown/code-zone.d.ts +7 -0
- package/dist/types/inputs/signature-messages.d.ts +11 -0
- package/dist/types/inputs/signature.d.ts +72 -0
- package/dist/types/internal/render-error.d.ts +13 -0
- package/dist/types/intl/messages.d.ts +101 -0
- package/dist/types/layout/AppWorkspace.d.ts +38 -0
- package/dist/types/layout/SidebarItemPreview.d.ts +2 -0
- package/dist/types/layout/index.d.ts +2 -2
- package/dist/types/layout/navigation-model.d.ts +18 -0
- package/dist/types/surfaces/ResourceCard.d.ts +31 -0
- package/dist/types/surfaces/index.d.ts +2 -0
- package/package.json +5 -4
|
@@ -2,12 +2,21 @@ import { type JSX } from "solid-js";
|
|
|
2
2
|
type ChoiceGroup = {
|
|
3
3
|
value: string | null;
|
|
4
4
|
label: string;
|
|
5
|
+
icon?: string;
|
|
5
6
|
};
|
|
7
|
+
/**
|
|
8
|
+
* A single-choice row of chips that scrolls sideways instead of wrapping, so its height never changes. Select and
|
|
9
|
+
* MultiSelect use it for their filters; `ChoiceChips` is the public field around it.
|
|
10
|
+
*/
|
|
6
11
|
export declare function ChoiceGroups(props: {
|
|
7
12
|
choices: readonly ChoiceGroup[];
|
|
8
13
|
value: string | null;
|
|
9
14
|
onValueChange: (value: string | null) => void;
|
|
10
|
-
ariaLabel
|
|
11
|
-
|
|
15
|
+
ariaLabel?: string;
|
|
16
|
+
/** The field label that names the group; replaces `ariaLabel`. */
|
|
17
|
+
labelledBy?: string;
|
|
18
|
+
describedBy?: string;
|
|
19
|
+
controls?: string;
|
|
20
|
+
disabled?: boolean;
|
|
12
21
|
}): JSX.Element;
|
|
13
22
|
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type JSX } from "solid-js";
|
|
2
|
+
import { type FileDropOptions } from "./file-drop";
|
|
3
|
+
export type { FileDropDetails, FileDropOptions, FileDropRejection } from "./file-drop";
|
|
4
|
+
export type FileDropTargetProps = FileDropOptions & {
|
|
5
|
+
/**
|
|
6
|
+
* The area that takes the files. Defaults to the nearest dialog, `AppWorkspace.Detail`, or `AppWorkspace.Main`
|
|
7
|
+
* around the component, and to the whole window outside of them.
|
|
8
|
+
*/
|
|
9
|
+
for?: Element;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Turns an area into a drop target while files from outside the page are dragged over the window. A calm overlay
|
|
13
|
+
* covers the area without moving anything and says what dropping does; a more specific target inside it, such as a
|
|
14
|
+
* folder row or a `FileDropzone`, takes the drop and its sentence while the pointer is over it. Text, links, and
|
|
15
|
+
* elements dragged within the page never show it. Keep a visible upload button for keyboard and touch users.
|
|
16
|
+
*/
|
|
17
|
+
export declare function FileDropTarget(props: FileDropTargetProps): JSX.Element;
|
|
18
|
+
/**
|
|
19
|
+
* Makes one element a specific drop target, such as a folder row inside a `FileDropTarget` area: pass the result as
|
|
20
|
+
* the element's `ref`. It wins over the area around it while the pointer is over it, and the area's overlay shows its
|
|
21
|
+
* sentence. Calling the ref again with new options replaces them.
|
|
22
|
+
*/
|
|
23
|
+
export declare function fileDropTarget(options: FileDropOptions): (element: Element) => void;
|
|
@@ -10,6 +10,14 @@ export type FileDropzoneProps = FieldProps & {
|
|
|
10
10
|
title?: JSX.Element;
|
|
11
11
|
subtitle?: JSX.Element;
|
|
12
12
|
hint?: JSX.Element;
|
|
13
|
+
/** One sentence that says what dropping does, shown while files are over the zone. Defaults to "Drop to upload". */
|
|
14
|
+
dropLabel?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Chooses files when the zone is clicked, instead of the device's file dialog, for example to offer other sources as
|
|
17
|
+
* well. Called within the click, so it may still open the device's dialog; resolve `[]` when the user cancels. A
|
|
18
|
+
* rejection shows its message as the field's error.
|
|
19
|
+
*/
|
|
20
|
+
choose?: () => Promise<readonly File[]>;
|
|
13
21
|
onDrop: (files: File[]) => void | Promise<void>;
|
|
14
22
|
};
|
|
15
23
|
export declare function FileDropzone(props: FileDropzoneProps): JSX.Element;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type JSX } from "solid-js";
|
|
2
|
+
import type { ValueFieldProps } from "./field-contract";
|
|
3
|
+
import { type SignatureValue } from "./signature";
|
|
4
|
+
export type SignatureInputProps = ValueFieldProps<SignatureValue | null> & {
|
|
5
|
+
/** Submits the value as JSON in a hidden input of this name. */
|
|
6
|
+
name?: string;
|
|
7
|
+
/** Shows the signature without allowing changes. */
|
|
8
|
+
readOnly?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Offers typing the name instead of drawing. Defaults to `true`: typing is the
|
|
11
|
+
* keyboard and screen-reader path and helps people who cannot draw. Without
|
|
12
|
+
* it, a typed value is still shown and can be cleared, but not edited.
|
|
13
|
+
*/
|
|
14
|
+
allowTyped?: boolean;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* A signature field: draw with a finger, pen, or mouse, or type the name. The
|
|
18
|
+
* value is an SVG document plus how it was given; `signatureToPng` turns it
|
|
19
|
+
* into a bitmap. Legal evidence such as timestamps or hashes stays with the app.
|
|
20
|
+
*/
|
|
21
|
+
export declare function SignatureInput(props: SignatureInputProps): JSX.Element;
|
|
22
|
+
export default SignatureInput;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type JSX } from "solid-js";
|
|
2
|
+
import { type EmojiSkinTone } from "./emoji-index";
|
|
3
|
+
export type EmojiPickerProps = {
|
|
4
|
+
/** Called with the chosen emoji, in the chosen skin tone where it has one. */
|
|
5
|
+
onPick: (emoji: string) => void;
|
|
6
|
+
/** Recently used emoji, most recent first, shown as the first group. The application stores them; see `rememberEmoji`. */
|
|
7
|
+
recent?: readonly string[];
|
|
8
|
+
/** The skin tone for emoji that have one. Defaults to `0`, the default yellow. */
|
|
9
|
+
skinTone?: EmojiSkinTone;
|
|
10
|
+
/** Shows the skin-tone choice. The application stores the tone and passes it back as `skinTone`. */
|
|
11
|
+
onSkinToneChange?: (tone: EmojiSkinTone) => void;
|
|
12
|
+
/** Escape in an empty search field asks to close the surface the picker sits in. */
|
|
13
|
+
onClose?: () => void;
|
|
14
|
+
/** Moves focus into the search field once the picker is shown. */
|
|
15
|
+
autofocus?: boolean;
|
|
16
|
+
/** The picker's accessible name. Defaults to "Emoji". */
|
|
17
|
+
label?: string;
|
|
18
|
+
class?: string;
|
|
19
|
+
};
|
|
20
|
+
/** Where `index` moves for an arrow key in rows of `COLUMNS`, where every section starts a new row. */
|
|
21
|
+
export declare const nextEmojiIndex: (sizes: readonly number[], index: number, key: "ArrowLeft" | "ArrowRight" | "ArrowUp" | "ArrowDown") => number;
|
|
22
|
+
/**
|
|
23
|
+
* A search field, the groups, and a grid of emoji. Search finds English and German names, keywords and GitHub
|
|
24
|
+
* shortcodes. The focus stays in the search field: arrow keys move through the grid, Enter picks.
|
|
25
|
+
*/
|
|
26
|
+
declare function EmojiPickerPanel(props: EmojiPickerProps): JSX.Element;
|
|
27
|
+
export type EmojiPickerPopoverProps = Omit<EmojiPickerProps, "onClose" | "autofocus"> & {
|
|
28
|
+
/** The control the picker opens next to. The picker is open while this is set. */
|
|
29
|
+
anchor: HTMLElement | null | undefined;
|
|
30
|
+
/** Called after a pick, on Escape, on a click outside, and on another press of the anchor. */
|
|
31
|
+
onClose: () => void;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* The picker next to a control, such as the composer's emoji button or a message's "Add reaction". It opens above the
|
|
35
|
+
* control where there is room and below it otherwise, closes after a pick, and returns the focus to where it was.
|
|
36
|
+
*/
|
|
37
|
+
declare function EmojiPickerPopover(props: EmojiPickerPopoverProps): JSX.Element;
|
|
38
|
+
/** The emoji picker. `EmojiPicker.Popover` opens it next to a control. */
|
|
39
|
+
export declare const EmojiPicker: typeof EmojiPickerPanel & {
|
|
40
|
+
Popover: typeof EmojiPickerPopover;
|
|
41
|
+
};
|
|
42
|
+
export {};
|