@duskmoon-dev/components 0.3.0 → 0.3.3

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 (62) hide show
  1. package/README.md +33 -5
  2. package/dist/{chunk-r9wkv7xd.js → chunk-fwjzvsrx.js} +3 -3
  3. package/dist/classes/chat.d.ts +35 -0
  4. package/dist/classes/index.d.ts +2 -0
  5. package/dist/classes/index.js +1282 -1177
  6. package/dist/classes/markdown.d.ts +9 -0
  7. package/dist/components/anchor/index.js +2 -2
  8. package/dist/components/app/index.js +85 -85
  9. package/dist/components/cascader/index.js +2 -2
  10. package/dist/components/chat/Chat.d.ts +14 -0
  11. package/dist/components/chat/Chat.types.d.ts +47 -0
  12. package/dist/components/chat/index.d.ts +2 -0
  13. package/dist/components/chat/index.js +220 -0
  14. package/dist/components/color-picker/index.js +4 -4
  15. package/dist/components/config-provider/index.js +2 -2
  16. package/dist/components/dm-breadcrumb/index.js +18 -18
  17. package/dist/components/dm-date-picker/index.js +94 -94
  18. package/dist/components/dm-drawer/index.js +16 -16
  19. package/dist/components/dm-layout/index.js +189 -189
  20. package/dist/components/dm-menu/index.js +24 -24
  21. package/dist/components/dm-message/index.js +18 -18
  22. package/dist/components/dm-page-header/index.js +158 -158
  23. package/dist/components/dm-pagination/index.js +39 -39
  24. package/dist/components/dm-pro-table/index.js +1558 -1558
  25. package/dist/components/dm-provider/index.js +94 -94
  26. package/dist/components/dm-query/index.js +33 -31
  27. package/dist/components/dm-search/index.js +25 -25
  28. package/dist/components/dm-splitter/index.js +32 -32
  29. package/dist/components/dm-status/index.js +25 -25
  30. package/dist/components/dm-table/index.js +595 -595
  31. package/dist/components/dm-tabs/index.js +34 -34
  32. package/dist/components/dm-toolbar/index.js +23 -23
  33. package/dist/components/dm-tree/index.js +92 -92
  34. package/dist/components/dm-truncate/index.js +33 -33
  35. package/dist/components/dropdown/index.js +83 -83
  36. package/dist/components/form/index.js +2 -2
  37. package/dist/components/grid/index.js +2 -2
  38. package/dist/components/input/index.js +4 -4
  39. package/dist/components/markdown/Markdown.d.ts +3 -0
  40. package/dist/components/markdown/Markdown.types.d.ts +14 -0
  41. package/dist/components/markdown/index.d.ts +2 -0
  42. package/dist/components/markdown/index.js +171 -0
  43. package/dist/components/message/index.js +5 -5
  44. package/dist/components/notification/index.js +2 -2
  45. package/dist/components/popconfirm/index.js +42 -42
  46. package/dist/components/skeleton/index.js +5 -5
  47. package/dist/components/spin/index.js +2 -2
  48. package/dist/components/steps/index.js +2 -2
  49. package/dist/components/table/index.js +2 -2
  50. package/dist/components/tabs/index.js +2 -2
  51. package/dist/components/tag/index.js +2 -2
  52. package/dist/components/tour/index.js +62 -62
  53. package/dist/components/typography/index.js +4 -4
  54. package/dist/components/upload/index.js +5 -5
  55. package/dist/generated/version.d.ts +1 -1
  56. package/dist/index.d.ts +2 -0
  57. package/dist/index.js +1845 -1512
  58. package/dist/infrastructure.js +11 -11
  59. package/dist/styles.css +13457 -9832
  60. package/dist/theme/index.js +3 -3
  61. package/dist/utils/index.js +5 -5
  62. package/package.json +18 -7
package/README.md CHANGED
@@ -1,18 +1,26 @@
1
1
  # @duskmoon-dev/components
2
2
 
3
- The core React component library for Duskmoon.
3
+ The DuskMoon React component package.
4
4
 
5
5
  ## Installation
6
6
 
7
7
  ```bash
8
- bun add @duskmoon-dev/components
8
+ bun add @duskmoon-dev/components @duskmoon-dev/core react react-dom
9
+ ```
10
+
11
+ Import the stylesheet once in your app:
12
+
13
+ ```tsx
14
+ import "@duskmoon-dev/components/styles.css";
9
15
  ```
10
16
 
11
17
  ## Features
12
18
 
13
- - **TypeScript First**: Written entirely in TypeScript for excellent developer experience.
14
- - **Optimized for Next.js**: Compatible with Next.js 15 and React 19.
15
- - **Modular Exports**: Import only what you need.
19
+ - **React 19 ready**: Components and examples target the current React runtime.
20
+ - **TypeScript first**: Public props and helper APIs ship with declarations.
21
+ - **Modular exports**: Import from the root package or from component subpaths.
22
+ - **DuskMoon styling**: Component classes and CSS are backed by
23
+ `@duskmoon-dev/core`.
16
24
 
17
25
  ## Usage
18
26
 
@@ -25,6 +33,23 @@ export default function MyComponent() {
25
33
  }
26
34
  ```
27
35
 
36
+ Root imports are also supported:
37
+
38
+ ```tsx
39
+ import { Button, DmTable, theme } from "@duskmoon-dev/components";
40
+ ```
41
+
42
+ ## Public Surface
43
+
44
+ - 73 standard components such as `Button`, `Chat`, `Table`, `Modal`, `Select`,
45
+ and `Typography`.
46
+ - 21 DuskMoon workflow components such as `DmLayout`, `DmSearch`, `DmTable`,
47
+ `DmProTable`, and `DmToolbar`.
48
+ - 13 infrastructure exports including `theme`, `version`,
49
+ `unstableSetRender`, `GetProps`, `GetRef`, and DuskMoon theme helpers.
50
+ - Component subpath exports follow `@duskmoon-dev/components/{component-id}`,
51
+ for example `@duskmoon-dev/components/date-picker`.
52
+
28
53
  ## Development
29
54
 
30
55
  ```bash
@@ -36,4 +61,7 @@ bun run test
36
61
 
37
62
  # Typecheck
38
63
  bun run typecheck
64
+
65
+ # Check parity manifest coverage
66
+ bun run parity:components
39
67
  ```
@@ -20,10 +20,10 @@ function clsx() {
20
20
  }
21
21
 
22
22
  // src/utils/cn.ts
23
- function cn(...inputs) {
23
+ function cn2(...inputs) {
24
24
  return clsx(inputs);
25
25
  }
26
- function duskmoonMerge(classes) {
26
+ function duskmoonMerge2(classes) {
27
27
  return classes;
28
28
  }
29
- export { cn, duskmoonMerge };
29
+ export { cn2, duskmoonMerge2 };
@@ -0,0 +1,35 @@
1
+ import type { ChatBubbleColor, ChatBubbleSize, ChatPlacement, ChatToolState } from "../components/chat/Chat.types";
2
+ export declare const chatBaseClass = "chat";
3
+ export declare const chatAvatarClass = "chat-avatar";
4
+ export declare const chatHeaderClass = "chat-header";
5
+ export declare const chatBubbleBaseClass = "chat-bubble";
6
+ export declare const chatFooterClass = "chat-footer";
7
+ export declare const chatReasoningClass = "chat-reasoning";
8
+ export declare const chatToolBaseClass = "chat-tool";
9
+ export declare const chatToolHeaderClass = "chat-tool-header";
10
+ export declare const chatToolStatusClass = "chat-tool-status";
11
+ export declare const chatToolCallClass = "chat-tool-call";
12
+ export declare const chatToolResultClass = "chat-tool-result";
13
+ export declare const chatTypingClass = "chat-typing";
14
+ export declare const chatStreamingCaretClass = "chat-streaming-caret";
15
+ export declare const chatBubbleFilledClass = "chat-bubble-filled";
16
+ export declare const chatBubbleStreamingClass = "chat-bubble-streaming";
17
+ export declare const chatPlacementClasses: Record<ChatPlacement, string>;
18
+ export declare const chatBubbleColorClasses: Record<ChatBubbleColor, string>;
19
+ export declare const chatBubbleSizeClasses: Record<ChatBubbleSize, string>;
20
+ export declare const chatToolStateClasses: Record<ChatToolState, string>;
21
+ export declare function getChatClasses({ placement, className, }: {
22
+ placement?: ChatPlacement;
23
+ className?: string;
24
+ }): string;
25
+ export declare function getChatBubbleClasses({ color, size, filled, streaming, className, }: {
26
+ color?: ChatBubbleColor;
27
+ size?: ChatBubbleSize;
28
+ filled?: boolean;
29
+ streaming?: boolean;
30
+ className?: string;
31
+ }): string;
32
+ export declare function getChatToolClasses({ status, className, }: {
33
+ status?: ChatToolState;
34
+ className?: string;
35
+ }): string;
@@ -10,6 +10,7 @@ export * from "./breadcrumb";
10
10
  export * from "./button";
11
11
  export * from "./calendar";
12
12
  export * from "./card";
13
+ export * from "./chat";
13
14
  export * from "./carousel";
14
15
  export * from "./cascader";
15
16
  export * from "./checkbox";
@@ -88,5 +89,6 @@ export * from "./transfer";
88
89
  export * from "./tree";
89
90
  export * from "./tree-select";
90
91
  export * from "./typography";
92
+ export * from "./markdown";
91
93
  export * from "./upload";
92
94
  export * from "./watermark";