@k2b/ui 0.31.0 → 0.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (209) hide show
  1. package/dist/base.css +2 -0
  2. package/dist/browser/actions/Dropdown.js +159 -99
  3. package/dist/browser/actions/Dropdown.js.map +1 -1
  4. package/dist/browser/actions/FilterChip.js +113 -56
  5. package/dist/browser/actions/FilterChip.js.map +1 -1
  6. package/dist/browser/actions/ViewTabs.js +8 -0
  7. package/dist/browser/actions/ViewTabs.js.map +1 -1
  8. package/dist/browser/actions/filter-messages.js +26 -2
  9. package/dist/browser/actions/filter-messages.js.map +1 -1
  10. package/dist/browser/actions/menu-rows.js +23 -3
  11. package/dist/browser/actions/menu-rows.js.map +1 -1
  12. package/dist/browser/actions/menu-sheet.js +2 -7
  13. package/dist/browser/actions/menu-sheet.js.map +1 -1
  14. package/dist/browser/chat/ChatComposer.js +480 -403
  15. package/dist/browser/chat/ChatComposer.js.map +1 -1
  16. package/dist/browser/chat/chat-messages.js +14 -0
  17. package/dist/browser/chat/chat-messages.js.map +1 -1
  18. package/dist/browser/chat/index.js.map +1 -1
  19. package/dist/browser/content/Calendar.js +39 -29
  20. package/dist/browser/content/Calendar.js.map +1 -1
  21. package/dist/browser/content/CalendarDayView.js +159 -165
  22. package/dist/browser/content/CalendarDayView.js.map +1 -1
  23. package/dist/browser/content/Chart.js +104 -55
  24. package/dist/browser/content/Chart.js.map +1 -1
  25. package/dist/browser/content/ChartExplorer.js +5 -3
  26. package/dist/browser/content/ChartExplorer.js.map +1 -1
  27. package/dist/browser/content/MapView.js +4 -4
  28. package/dist/browser/content/MapView.js.map +1 -1
  29. package/dist/browser/content/MessageRow.js +607 -343
  30. package/dist/browser/content/MessageRow.js.map +1 -1
  31. package/dist/browser/content/ReactionBar.js +17 -0
  32. package/dist/browser/content/ReactionBar.js.map +1 -1
  33. package/dist/browser/content/chart-inspection-core.js +4 -1
  34. package/dist/browser/content/chart-inspection-core.js.map +1 -1
  35. package/dist/browser/content/code-highlight.js +66 -0
  36. package/dist/browser/content/code-highlight.js.map +1 -1
  37. package/dist/browser/content/index.js +2 -1
  38. package/dist/browser/content/index.js.map +1 -1
  39. package/dist/browser/content/map-view-live.js +47 -10
  40. package/dist/browser/content/map-view-live.js.map +1 -1
  41. package/dist/browser/content/map-view-types.js.map +1 -1
  42. package/dist/browser/feedback/dialog-core.js +6 -0
  43. package/dist/browser/feedback/dialog-core.js.map +1 -1
  44. package/dist/browser/inputs/AutocompleteEditor.js +167 -104
  45. package/dist/browser/inputs/AutocompleteEditor.js.map +1 -1
  46. package/dist/browser/inputs/RichSelect.js +1474 -0
  47. package/dist/browser/inputs/RichSelect.js.map +1 -0
  48. package/dist/browser/inputs/TextInput.js +99 -61
  49. package/dist/browser/inputs/TextInput.js.map +1 -1
  50. package/dist/browser/inputs/choice.js +19 -8
  51. package/dist/browser/inputs/choice.js.map +1 -1
  52. package/dist/browser/inputs/index.js +1 -0
  53. package/dist/browser/inputs/index.js.map +1 -1
  54. package/dist/browser/inputs/rich-select-messages.js +46 -0
  55. package/dist/browser/inputs/rich-select-messages.js.map +1 -0
  56. package/dist/browser/intl/shortcut-messages.js +4 -0
  57. package/dist/browser/intl/shortcut-messages.js.map +1 -1
  58. package/dist/browser/intl/shortcut.js +4 -0
  59. package/dist/browser/intl/shortcut.js.map +1 -1
  60. package/dist/browser/layout/AppWorkspace.js +624 -565
  61. package/dist/browser/layout/AppWorkspace.js.map +1 -1
  62. package/dist/browser/layout/DetailPanel.js +10 -1
  63. package/dist/browser/layout/DetailPanel.js.map +1 -1
  64. package/dist/browser/layout/MobileShell.js +213 -38
  65. package/dist/browser/layout/MobileShell.js.map +1 -1
  66. package/dist/browser/layout/Navigation.js +14 -5
  67. package/dist/browser/layout/Navigation.js.map +1 -1
  68. package/dist/browser/layout/PageTitle.js +9 -3
  69. package/dist/browser/layout/PageTitle.js.map +1 -1
  70. package/dist/browser/layout/ResizeSeparator.js +8 -2
  71. package/dist/browser/layout/ResizeSeparator.js.map +1 -1
  72. package/dist/browser/layout/app-workspace-controller.js +192 -31
  73. package/dist/browser/layout/app-workspace-controller.js.map +1 -1
  74. package/dist/browser/layout/index.js +1 -0
  75. package/dist/browser/layout/index.js.map +1 -1
  76. package/dist/browser/layout/navigation-model.js.map +1 -1
  77. package/dist/browser/layout/resize-separator.js +25 -1
  78. package/dist/browser/layout/resize-separator.js.map +1 -1
  79. package/dist/browser/layout/scroll-fade.js +32 -5
  80. package/dist/browser/layout/scroll-fade.js.map +1 -1
  81. package/dist/browser/surfaces/NoticeCard.js +46 -30
  82. package/dist/browser/surfaces/NoticeCard.js.map +1 -1
  83. package/dist/browser/surfaces/Skeleton.js +14 -0
  84. package/dist/browser/surfaces/Skeleton.js.map +1 -0
  85. package/dist/browser/surfaces/index.js +1 -0
  86. package/dist/browser/surfaces/index.js.map +1 -1
  87. package/dist/browser/surfaces/resource-messages.js +2 -2
  88. package/dist/browser/surfaces/resource-messages.js.map +1 -1
  89. package/dist/ssr/actions/Dropdown.js +51 -27
  90. package/dist/ssr/actions/Dropdown.js.map +1 -1
  91. package/dist/ssr/actions/FilterChip.js +67 -16
  92. package/dist/ssr/actions/FilterChip.js.map +1 -1
  93. package/dist/ssr/actions/ViewTabs.js +8 -0
  94. package/dist/ssr/actions/ViewTabs.js.map +1 -1
  95. package/dist/ssr/actions/filter-messages.js +26 -2
  96. package/dist/ssr/actions/filter-messages.js.map +1 -1
  97. package/dist/ssr/actions/menu-rows.js +23 -3
  98. package/dist/ssr/actions/menu-rows.js.map +1 -1
  99. package/dist/ssr/actions/menu-sheet.js +2 -7
  100. package/dist/ssr/actions/menu-sheet.js.map +1 -1
  101. package/dist/ssr/chat/ChatComposer.js +96 -67
  102. package/dist/ssr/chat/ChatComposer.js.map +1 -1
  103. package/dist/ssr/chat/chat-messages.js +14 -0
  104. package/dist/ssr/chat/chat-messages.js.map +1 -1
  105. package/dist/ssr/chat/index.js.map +1 -1
  106. package/dist/ssr/content/Calendar.js +40 -31
  107. package/dist/ssr/content/Calendar.js.map +1 -1
  108. package/dist/ssr/content/CalendarDayView.js +40 -48
  109. package/dist/ssr/content/CalendarDayView.js.map +1 -1
  110. package/dist/ssr/content/Chart.js +27 -7
  111. package/dist/ssr/content/Chart.js.map +1 -1
  112. package/dist/ssr/content/ChartExplorer.js +5 -3
  113. package/dist/ssr/content/ChartExplorer.js.map +1 -1
  114. package/dist/ssr/content/MapView.js +4 -4
  115. package/dist/ssr/content/MapView.js.map +1 -1
  116. package/dist/ssr/content/MessageRow.js +264 -91
  117. package/dist/ssr/content/MessageRow.js.map +1 -1
  118. package/dist/ssr/content/ReactionBar.js +17 -0
  119. package/dist/ssr/content/ReactionBar.js.map +1 -1
  120. package/dist/ssr/content/chart-inspection-core.js +4 -1
  121. package/dist/ssr/content/chart-inspection-core.js.map +1 -1
  122. package/dist/ssr/content/code-highlight.js +66 -0
  123. package/dist/ssr/content/code-highlight.js.map +1 -1
  124. package/dist/ssr/content/index.js +2 -1
  125. package/dist/ssr/content/index.js.map +1 -1
  126. package/dist/ssr/content/map-view-types.js.map +1 -1
  127. package/dist/ssr/feedback/dialog-core.js +6 -0
  128. package/dist/ssr/feedback/dialog-core.js.map +1 -1
  129. package/dist/ssr/inputs/AutocompleteEditor.js +64 -24
  130. package/dist/ssr/inputs/AutocompleteEditor.js.map +1 -1
  131. package/dist/ssr/inputs/RichSelect.js +950 -0
  132. package/dist/ssr/inputs/RichSelect.js.map +1 -0
  133. package/dist/ssr/inputs/TextInput.js +44 -17
  134. package/dist/ssr/inputs/TextInput.js.map +1 -1
  135. package/dist/ssr/inputs/choice.js +19 -8
  136. package/dist/ssr/inputs/choice.js.map +1 -1
  137. package/dist/ssr/inputs/index.js +1 -0
  138. package/dist/ssr/inputs/index.js.map +1 -1
  139. package/dist/ssr/inputs/rich-select-messages.js +46 -0
  140. package/dist/ssr/inputs/rich-select-messages.js.map +1 -0
  141. package/dist/ssr/intl/shortcut-messages.js +4 -0
  142. package/dist/ssr/intl/shortcut-messages.js.map +1 -1
  143. package/dist/ssr/intl/shortcut.js +4 -0
  144. package/dist/ssr/intl/shortcut.js.map +1 -1
  145. package/dist/ssr/layout/AppWorkspace.js +166 -125
  146. package/dist/ssr/layout/AppWorkspace.js.map +1 -1
  147. package/dist/ssr/layout/DetailPanel.js +1 -1
  148. package/dist/ssr/layout/DetailPanel.js.map +1 -1
  149. package/dist/ssr/layout/MobileShell.js +100 -20
  150. package/dist/ssr/layout/MobileShell.js.map +1 -1
  151. package/dist/ssr/layout/Navigation.js +1 -1
  152. package/dist/ssr/layout/Navigation.js.map +1 -1
  153. package/dist/ssr/layout/PageTitle.js +9 -3
  154. package/dist/ssr/layout/PageTitle.js.map +1 -1
  155. package/dist/ssr/layout/ResizeSeparator.js +4 -1
  156. package/dist/ssr/layout/ResizeSeparator.js.map +1 -1
  157. package/dist/ssr/layout/app-workspace-controller.js +192 -31
  158. package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
  159. package/dist/ssr/layout/index.js +1 -0
  160. package/dist/ssr/layout/index.js.map +1 -1
  161. package/dist/ssr/layout/navigation-model.js.map +1 -1
  162. package/dist/ssr/layout/resize-separator.js +25 -1
  163. package/dist/ssr/layout/resize-separator.js.map +1 -1
  164. package/dist/ssr/layout/scroll-fade.js +32 -5
  165. package/dist/ssr/layout/scroll-fade.js.map +1 -1
  166. package/dist/ssr/surfaces/NoticeCard.js +21 -12
  167. package/dist/ssr/surfaces/NoticeCard.js.map +1 -1
  168. package/dist/ssr/surfaces/Skeleton.js +8 -0
  169. package/dist/ssr/surfaces/Skeleton.js.map +1 -0
  170. package/dist/ssr/surfaces/index.js +1 -0
  171. package/dist/ssr/surfaces/index.js.map +1 -1
  172. package/dist/ssr/surfaces/resource-messages.js +2 -2
  173. package/dist/ssr/surfaces/resource-messages.js.map +1 -1
  174. package/dist/styles.css +1 -1
  175. package/dist/types/actions/Dropdown.d.ts +14 -0
  176. package/dist/types/actions/FilterChip.d.ts +11 -0
  177. package/dist/types/actions/filter-messages.d.ts +12 -0
  178. package/dist/types/actions/menu-rows.d.ts +7 -2
  179. package/dist/types/chat/ChatComposer.d.ts +13 -0
  180. package/dist/types/chat/chat-messages.d.ts +7 -0
  181. package/dist/types/chat/index.d.ts +1 -1
  182. package/dist/types/content/Calendar.d.ts +7 -0
  183. package/dist/types/content/Chart.d.ts +4 -2
  184. package/dist/types/content/ChartExplorer.d.ts +0 -1
  185. package/dist/types/content/MessageRow.d.ts +64 -2
  186. package/dist/types/content/code-highlight.d.ts +3 -1
  187. package/dist/types/content/index.d.ts +3 -2
  188. package/dist/types/content/map-view-live.d.ts +1 -1
  189. package/dist/types/content/map-view-types.d.ts +2 -0
  190. package/dist/types/feedback/dialog-core.d.ts +3 -0
  191. package/dist/types/inputs/AutocompleteEditor.d.ts +6 -1
  192. package/dist/types/inputs/RichSelect.d.ts +93 -0
  193. package/dist/types/inputs/TextInput.d.ts +5 -2
  194. package/dist/types/inputs/choice.d.ts +24 -4
  195. package/dist/types/inputs/index.d.ts +2 -0
  196. package/dist/types/inputs/rich-select-messages.d.ts +21 -0
  197. package/dist/types/intl/shortcut-messages.d.ts +2 -0
  198. package/dist/types/layout/AppWorkspace.d.ts +9 -0
  199. package/dist/types/layout/DetailPanel.d.ts +2 -0
  200. package/dist/types/layout/MobileShell.d.ts +52 -5
  201. package/dist/types/layout/app-workspace-controller.d.ts +2 -0
  202. package/dist/types/layout/index.d.ts +2 -1
  203. package/dist/types/layout/navigation-model.d.ts +2 -0
  204. package/dist/types/layout/resize-separator.d.ts +1 -0
  205. package/dist/types/layout/scroll-fade.d.ts +5 -0
  206. package/dist/types/surfaces/NoticeCard.d.ts +3 -0
  207. package/dist/types/surfaces/Skeleton.d.ts +6 -0
  208. package/dist/types/surfaces/index.d.ts +1 -0
  209. package/package.json +4 -4
@@ -1,20 +1,38 @@
1
1
  import { type JSX } from "solid-js";
2
+ import type { TabBarItem } from "./TabBar";
2
3
  export type MobileShellProps = {
3
4
  /** Usually `MobileShell.Header`; it sits above the scroll area and pads the top safe area. */
4
- header: JSX.Element;
5
+ header?: JSX.Element;
5
6
  /** Usually a `TabBar`; it sits below the scroll area and pads the bottom safe area itself. */
6
7
  footer?: JSX.Element;
8
+ /**
9
+ * Usually `MobileShell.Sidebar` with the footer's destinations and more. From 48rem of window width it stands at
10
+ * the start edge and the footer goes; below, it is not shown. The server renders both, so CSS alone decides.
11
+ */
12
+ sidebar?: JSX.Element;
7
13
  /** The page content, inside the shell's only scroll area. */
8
14
  children: JSX.Element;
15
+ /**
16
+ * `false` for content that brings its own heads and scroll areas, such as `AppWorkspace.Main` levels: it fills the
17
+ * main area without the shell's scroll area, and the header shows only as the frame of the next page while a tapped
18
+ * tab's page loads.
19
+ */
20
+ scroll?: boolean;
9
21
  class?: string;
10
22
  };
11
23
  export type MobileShellHeaderProps = {
12
24
  title: string;
13
- /** A Back control before the title: a link with `href`, otherwise a button. */
25
+ /** The title while the shell shows its sidebar, which already names the app; `title` by default. */
26
+ sidebarTitle?: string;
27
+ /**
28
+ * A Back control before the title: a link with `href`, otherwise a button. `withSidebar: false` hides it while the
29
+ * shell shows its sidebar, for a way back to a destination the sidebar lists.
30
+ */
14
31
  back?: {
15
32
  href?: string;
16
33
  onClick?: () => void;
17
34
  label: string;
35
+ withSidebar?: boolean;
18
36
  };
19
37
  /** Controls after the title, such as a menu. */
20
38
  actions?: JSX.Element;
@@ -29,12 +47,41 @@ export type MobileShellHeaderProps = {
29
47
  export declare function observeMobileShell(root: HTMLElement): () => void;
30
48
  declare function MobileShellRoot(props: MobileShellProps): JSX.Element;
31
49
  declare function MobileShellHeader(props: MobileShellHeaderProps): JSX.Element;
50
+ export type MobileShellSidebarItem = TabBarItem & {
51
+ /** A count after the label, such as unread messages; 0 shows nothing. */
52
+ count?: number;
53
+ };
54
+ export type MobileShellSidebarProps = {
55
+ /** Accessible name of the navigation landmark; usually the tab bar's. */
56
+ label: string;
57
+ /** The app's name in the sidebar's head. */
58
+ title: string;
59
+ /** Address of the app's logo before the name; decorative, the name says it. */
60
+ logo?: string;
61
+ /** Destinations at the top, such as Start. */
62
+ items: readonly MobileShellSidebarItem[];
63
+ /** Named groups below them, such as the apps; a group without items is left out. */
64
+ sections?: readonly {
65
+ title: string;
66
+ items: readonly MobileShellSidebarItem[];
67
+ }[];
68
+ /** Destinations at the bottom edge, such as Settings. */
69
+ footer?: readonly MobileShellSidebarItem[];
70
+ };
71
+ /**
72
+ * The navigation of a touch app on a wide screen, in `MobileShell`'s `sidebar`: the app's name, then its destinations
73
+ * as 44 px rows with icon and label, the open one in the action colour. A press shows the item's page frame at once,
74
+ * as on a tab, and the row of a loading page pulses.
75
+ */
76
+ declare function MobileShellSidebar(props: MobileShellSidebarProps): JSX.Element;
32
77
  /**
33
- * The full-screen frame of a phone app: a header, one scroll area, and an optional footer such as a `TabBar`. While
34
- * it is mounted, the document itself never scrolls, pinch zoom and rubber-banding are off, and the toast rail sits
35
- * above the footer. Mount one per page, as the page's layout.
78
+ * The full-screen frame of a phone app: a header, one scroll area, and an optional footer such as a `TabBar`. With a
79
+ * `sidebar`, a window of 48rem and wider shows the sidebar at the start edge instead of the footer, and the toast rail
80
+ * stays in the area beside it. While it is mounted, the document itself never scrolls, pinch zoom and rubber-banding
81
+ * are off, and the toast rail sits above the footer. Mount one per page, as the page's layout.
36
82
  */
37
83
  export declare const MobileShell: typeof MobileShellRoot & {
38
84
  Header: typeof MobileShellHeader;
85
+ Sidebar: typeof MobileShellSidebar;
39
86
  };
40
87
  export default MobileShell;
@@ -11,6 +11,8 @@ export declare const parkWorkspaceDetailDrawers: (root?: ParentNode) => void;
11
11
  * stays application state, so the controller only requests the change.
12
12
  */
13
13
  export declare const APP_WORKSPACE_SIDEBAR_HIDE_EVENT = "k2b-app-workspace-sidebar-hide";
14
+ /** Asks the owning Detail to reopen its current available object. */
15
+ export declare const APP_WORKSPACE_DETAIL_OPEN_EVENT = "k2b-app-workspace-detail-open";
14
16
  /** Asks the owning `AppWorkspace.Detail` to close; its `onClose` decides. */
15
17
  export declare const APP_WORKSPACE_DETAIL_CLOSE_EVENT = "k2b-app-workspace-detail-close";
16
18
  /**
@@ -16,7 +16,7 @@ export type { DiscussionComposerProps, DiscussionItemProps, DiscussionListProps,
16
16
  export { default as Discussion } from "./Discussion";
17
17
  export type { FloatingWindowClose, FloatingWindowProps, OpenFloatingWindowOptions, } from "./FloatingWindow";
18
18
  export { default as FloatingWindow, type FloatingWindowRect, fitFloatingWindowRect, openFloatingWindow, } from "./FloatingWindow";
19
- export type { MobileShellHeaderProps, MobileShellProps } from "./MobileShell";
19
+ export type { MobileShellHeaderProps, MobileShellProps, MobileShellSidebarItem, MobileShellSidebarProps } from "./MobileShell";
20
20
  export { default as MobileShell, observeMobileShell } from "./MobileShell";
21
21
  export { default as Navigation, type NavigationProps } from "./Navigation";
22
22
  export { createNavigation, findNavigationItem, type NavigationController, type NavigationItem, type NavigationOptions, type NavigationStatus, } from "./navigation-model";
@@ -44,6 +44,7 @@ export { default as SettingsCollection } from "./SettingsCollection";
44
44
  export type { SettingsModalFooterProps, SettingsModalGroupProps, SettingsModalProps, SettingsModalTabProps, SettingsModalTabTone, } from "./SettingsModal";
45
45
  export { default as SettingsModal } from "./SettingsModal";
46
46
  export { APP_WORKSPACE_SWITCHER_SEARCH_FROM, type AppWorkspaceSidebarSwitcherProps, type AppWorkspaceSwitcherAction, type AppWorkspaceSwitcherOption, } from "./SidebarSwitcher";
47
+ export { measureScrollFade } from "./scroll-fade";
47
48
  export type { TabBarItem, TabBarProps } from "./TabBar";
48
49
  export { default as TabBar } from "./TabBar";
49
50
  export type { TableOfContentsItem, TableOfContentsProps } from "./TableOfContents";
@@ -22,6 +22,8 @@ type NavigationEntry = {
22
22
  */
23
23
  status?: NavigationStatus | null;
24
24
  active?: boolean;
25
+ /** Current container, independently of its active destination. `false` quiets this row; omitted keeps the default ink. */
26
+ context?: boolean;
25
27
  disabled?: boolean;
26
28
  color?: string;
27
29
  children?: readonly NavigationItem[];
@@ -10,6 +10,7 @@ export type ResizeSeparatorOptions = {
10
10
  collapseBelow?: number;
11
11
  onResize: (value: number) => void;
12
12
  onResizeEnd?: (value: number) => void;
13
+ onReset?: () => void;
13
14
  onCollapseIntent?: (armed: boolean) => void;
14
15
  onCollapse?: () => void;
15
16
  onDragChange?: (dragging: boolean) => void;
@@ -1,5 +1,10 @@
1
1
  /** Self-contained because the sidebar inline script embeds its source. */
2
2
  export declare function scrollFadeEdges(body: HTMLElement): "top" | "bottom" | "both" | undefined;
3
+ /**
4
+ * Measures an observed scrollport's fades now instead of at the end of the frame. Call it before reading the fades in
5
+ * the same frame as a change of the scrollport's content, as an editor does when it keeps its cursor clear of them.
6
+ */
7
+ export declare function measureScrollFade(element: HTMLElement): void;
3
8
  export declare function createScrollFade(element: () => HTMLElement | undefined, enabled: () => boolean): void;
4
9
  /** Enrich only explicitly marked UI scrollports, including SSR and later navigation. */
5
10
  export declare function installScrollFades(root: Document | HTMLElement): () => void;
@@ -14,11 +14,14 @@ type NoticeCardContentProps = {
14
14
  };
15
15
  export type NoticeCardProps = Omit<JSX.HTMLAttributes<HTMLElement>, "children" | "class" | "title"> & NoticeCardContentProps & {
16
16
  tone?: NoticeTone;
17
+ /** A Tabler icon class. Turns the notice into a compact status line whose icon and text take the tone colour. */
18
+ icon?: string;
17
19
  class?: string;
18
20
  bodyClass?: string;
19
21
  };
20
22
  export declare const NOTICE_CARD_CLASSES: {
21
23
  readonly root: "k2b-notice-card";
24
+ readonly icon: "k2b-notice-card__icon";
22
25
  readonly content: "k2b-notice-card__content";
23
26
  readonly head: "k2b-notice-card__head";
24
27
  readonly title: "k2b-notice-card__title";
@@ -0,0 +1,6 @@
1
+ import type { JSX } from "solid-js";
2
+ export type SkeletonProps = {
3
+ class?: string;
4
+ };
5
+ /** Decorative loading geometry. The consumer owns dimensions and one accessible loading status. */
6
+ export declare function Skeleton(props: SkeletonProps): JSX.Element;
@@ -20,6 +20,7 @@ export type { ProgressRingProps, ProgressRingTone } from "./ProgressRing";
20
20
  export { ProgressRing } from "./ProgressRing";
21
21
  export type { ResourceCardProps, ResourceCardState } from "./ResourceCard";
22
22
  export { ResourceCard } from "./ResourceCard";
23
+ export { Skeleton, type SkeletonProps } from "./Skeleton";
23
24
  export type { StatCellAccent, StatCellProps, StatCellTone } from "./StatCell";
24
25
  export { StatCell } from "./StatCell";
25
26
  export type { StatGridAction, StatGridColumns, StatGridProps, StatGridSize, StatGridSurface, } from "./StatGrid";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@k2b/ui",
3
- "version": "0.31.0",
3
+ "version": "0.33.0",
4
4
  "description": "Production-ready components for SolidJS applications.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -59,13 +59,13 @@
59
59
  "qr-scanner": "1.4.2"
60
60
  },
61
61
  "peerDependencies": {
62
- "@k2b/ssr": "^0.12.0 || ^0.13.0 || ^0.14.0 || ^0.15.0 || ^0.16.0 || ^0.17.0 || ^0.18.0 || ^0.19.0",
62
+ "@k2b/ssr": "^0.12.0 || ^0.13.0 || ^0.14.0 || ^0.15.0 || ^0.16.0 || ^0.17.0 || ^0.18.0 || ^0.19.0 || ^0.20.0",
63
63
  "solid-js": "^1.9.10"
64
64
  },
65
65
  "devDependencies": {
66
66
  "@babel/core": "8.0.6",
67
67
  "@babel/preset-typescript": "8.0.1",
68
- "@k2b/ssr": "0.19.0",
68
+ "@k2b/ssr": "0.20.1",
69
69
  "@types/babel__core": "7.20.5",
70
70
  "@types/bun": "1.4.2",
71
71
  "axe-core": "4.11.0",
@@ -76,7 +76,7 @@
76
76
  "hono": "4.13.9",
77
77
  "playwright": "1.64.1",
78
78
  "seroval": "1.6.7",
79
- "solid-js": "1.9.15",
79
+ "solid-js": "1.9.17",
80
80
  "tailwindcss": "4.3.3",
81
81
  "typescript": "7.0.2",
82
82
  "@typescript/typescript6": "6.0.2",