@iyulab/chat-components 0.1.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 (79) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/LICENSE +21 -0
  3. package/README.md +20 -0
  4. package/dist/components/blocks/UCodeBlock.component.d.ts +24 -0
  5. package/dist/components/blocks/UCodeBlock.component.js +65 -0
  6. package/dist/components/blocks/UCodeBlock.d.ts +7 -0
  7. package/dist/components/blocks/UCodeBlock.js +5 -0
  8. package/dist/components/blocks/UCodeBlock.styles.d.ts +1 -0
  9. package/dist/components/blocks/UCodeBlock.styles.js +175 -0
  10. package/dist/components/blocks/UMarkedBlock.component.d.ts +24 -0
  11. package/dist/components/blocks/UMarkedBlock.component.js +80 -0
  12. package/dist/components/blocks/UMarkedBlock.d.ts +7 -0
  13. package/dist/components/blocks/UMarkedBlock.js +5 -0
  14. package/dist/components/blocks/UMarkedBlock.styles.d.ts +1 -0
  15. package/dist/components/blocks/UMarkedBlock.styles.js +1240 -0
  16. package/dist/components/blocks/UTextBlock.component.d.ts +37 -0
  17. package/dist/components/blocks/UTextBlock.component.js +123 -0
  18. package/dist/components/blocks/UTextBlock.d.ts +7 -0
  19. package/dist/components/blocks/UTextBlock.js +5 -0
  20. package/dist/components/blocks/UTextBlock.styles.d.ts +1 -0
  21. package/dist/components/blocks/UTextBlock.styles.js +71 -0
  22. package/dist/components/blocks/UThinkBlock.component.d.ts +28 -0
  23. package/dist/components/blocks/UThinkBlock.component.js +84 -0
  24. package/dist/components/blocks/UThinkBlock.d.ts +7 -0
  25. package/dist/components/blocks/UThinkBlock.js +5 -0
  26. package/dist/components/blocks/UThinkBlock.styles.d.ts +1 -0
  27. package/dist/components/blocks/UThinkBlock.styles.js +93 -0
  28. package/dist/components/blocks/UToolBlock.component.d.ts +16 -0
  29. package/dist/components/blocks/UToolBlock.component.js +126 -0
  30. package/dist/components/blocks/UToolBlock.d.ts +7 -0
  31. package/dist/components/blocks/UToolBlock.js +5 -0
  32. package/dist/components/blocks/UToolBlock.styles.d.ts +1 -0
  33. package/dist/components/blocks/UToolBlock.styles.js +107 -0
  34. package/dist/components/buttons/UAttachButton.component.d.ts +24 -0
  35. package/dist/components/buttons/UAttachButton.component.js +78 -0
  36. package/dist/components/buttons/UAttachButton.d.ts +7 -0
  37. package/dist/components/buttons/UAttachButton.js +5 -0
  38. package/dist/components/buttons/UAttachButton.styles.d.ts +1 -0
  39. package/dist/components/buttons/UAttachButton.styles.js +21 -0
  40. package/dist/components/buttons/UCopyButton.component.d.ts +25 -0
  41. package/dist/components/buttons/UCopyButton.component.js +105 -0
  42. package/dist/components/buttons/UCopyButton.d.ts +7 -0
  43. package/dist/components/buttons/UCopyButton.js +5 -0
  44. package/dist/components/buttons/UCopyButton.styles.d.ts +1 -0
  45. package/dist/components/buttons/UCopyButton.styles.js +47 -0
  46. package/dist/components/buttons/USendButton.component.d.ts +13 -0
  47. package/dist/components/buttons/USendButton.component.js +46 -0
  48. package/dist/components/buttons/USendButton.d.ts +7 -0
  49. package/dist/components/buttons/USendButton.js +5 -0
  50. package/dist/components/buttons/USendButton.styles.d.ts +1 -0
  51. package/dist/components/buttons/USendButton.styles.js +23 -0
  52. package/dist/components/buttons/UThinkButton.component.d.ts +19 -0
  53. package/dist/components/buttons/UThinkButton.component.js +73 -0
  54. package/dist/components/buttons/UThinkButton.d.ts +7 -0
  55. package/dist/components/buttons/UThinkButton.js +5 -0
  56. package/dist/components/buttons/UThinkButton.styles.d.ts +1 -0
  57. package/dist/components/buttons/UThinkButton.styles.js +72 -0
  58. package/dist/components/json-viewer/UJsonViewer.component.d.ts +44 -0
  59. package/dist/components/json-viewer/UJsonViewer.component.js +137 -0
  60. package/dist/components/json-viewer/UJsonViewer.d.ts +7 -0
  61. package/dist/components/json-viewer/UJsonViewer.js +5 -0
  62. package/dist/components/json-viewer/UJsonViewer.lib.d.ts +16 -0
  63. package/dist/components/json-viewer/UJsonViewer.lib.js +28 -0
  64. package/dist/components/json-viewer/UJsonViewer.styles.d.ts +1 -0
  65. package/dist/components/json-viewer/UJsonViewer.styles.js +115 -0
  66. package/dist/components/message/UMessage.component.d.ts +13 -0
  67. package/dist/components/message/UMessage.component.js +104 -0
  68. package/dist/components/message/UMessage.d.ts +8 -0
  69. package/dist/components/message/UMessage.js +5 -0
  70. package/dist/components/message/UMessage.styles.d.ts +1 -0
  71. package/dist/components/message/UMessage.styles.js +72 -0
  72. package/dist/components/message/UMessage.types.d.ts +21 -0
  73. package/dist/events/UStopEvent.d.ts +6 -0
  74. package/dist/events/USubmitEvent.d.ts +6 -0
  75. package/dist/index.d.ts +13 -0
  76. package/dist/index.js +22 -0
  77. package/dist/internals/date-helpers.d.ts +8 -0
  78. package/dist/internals/date-helpers.js +27 -0
  79. package/package.json +65 -0
@@ -0,0 +1,13 @@
1
+ export * from './components/blocks/UCodeBlock.js';
2
+ export * from './components/blocks/UMarkedBlock.js';
3
+ export * from './components/blocks/UTextBlock.js';
4
+ export * from './components/blocks/UThinkBlock.js';
5
+ export * from './components/blocks/UToolBlock.js';
6
+ export * from './components/buttons/UAttachButton.js';
7
+ export * from './components/buttons/UCopyButton.js';
8
+ export * from './components/buttons/USendButton.js';
9
+ export * from './components/buttons/UThinkButton.js';
10
+ export * from './components/json-viewer/UJsonViewer.js';
11
+ export * from './components/message/UMessage.js';
12
+ export type { UStopEvent } from './events/UStopEvent';
13
+ export type { USubmitEvent } from './events/USubmitEvent';
package/dist/index.js ADDED
@@ -0,0 +1,22 @@
1
+ import './components/blocks/UCodeBlock.js';
2
+ import './components/blocks/UMarkedBlock.js';
3
+ import './components/blocks/UTextBlock.js';
4
+ import './components/blocks/UThinkBlock.js';
5
+ import './components/blocks/UToolBlock.js';
6
+ import './components/buttons/UAttachButton.js';
7
+ import './components/buttons/UCopyButton.js';
8
+ import './components/buttons/USendButton.js';
9
+ import './components/buttons/UThinkButton.js';
10
+ import './components/json-viewer/UJsonViewer.js';
11
+ import './components/message/UMessage.js';
12
+ export { UCodeBlock } from './components/blocks/UCodeBlock.component.js';
13
+ export { UMarkedBlock } from './components/blocks/UMarkedBlock.component.js';
14
+ export { UTextBlock } from './components/blocks/UTextBlock.component.js';
15
+ export { UThinkBlock } from './components/blocks/UThinkBlock.component.js';
16
+ export { UToolBlock } from './components/blocks/UToolBlock.component.js';
17
+ export { UAttachButton } from './components/buttons/UAttachButton.component.js';
18
+ export { UCopyButton } from './components/buttons/UCopyButton.component.js';
19
+ export { USendButton } from './components/buttons/USendButton.component.js';
20
+ export { UThinkButton } from './components/buttons/UThinkButton.component.js';
21
+ export { UJsonViewer } from './components/json-viewer/UJsonViewer.component.js';
22
+ export { UMessage } from './components/message/UMessage.component.js';
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 문자열 날짜를 현지 시간으로 비교하여 시간 경과를 표시합니다.
3
+ */
4
+ export declare const since: (value?: string) => string;
5
+ /**
6
+ * 문자열 날짜를 현지 시간으로 기본 포맷
7
+ */
8
+ export declare const format: (value?: string, options?: Intl.DateTimeFormatOptions) => string;
@@ -0,0 +1,27 @@
1
+ const format = (value, options) => {
2
+ if (!value) return "";
3
+ const today = /* @__PURE__ */ new Date();
4
+ const locale = navigator.language;
5
+ const defaultOptions = {
6
+ year: "numeric",
7
+ month: "2-digit",
8
+ day: "2-digit",
9
+ hour: "2-digit",
10
+ minute: "2-digit"
11
+ };
12
+ let date = new Date(value);
13
+ const offset = value.endsWith("Z") ? 0 : date.getTimezoneOffset() * 60 * 1e3;
14
+ date = new Date(date.getTime() - offset);
15
+ if (date.getFullYear() === today.getFullYear() && date.getMonth() === today.getMonth() && date.getDate() === today.getDate()) {
16
+ const timeFormatter = new Intl.DateTimeFormat(locale, {
17
+ hour: "2-digit",
18
+ minute: "2-digit"
19
+ });
20
+ return timeFormatter.format(date);
21
+ } else {
22
+ const formatter = new Intl.DateTimeFormat(locale, { ...defaultOptions, ...options });
23
+ return formatter.format(date);
24
+ }
25
+ };
26
+
27
+ export { format };
package/package.json ADDED
@@ -0,0 +1,65 @@
1
+ {
2
+ "name": "@iyulab/chat-components",
3
+ "description": "llm chat components for building chat interfaces",
4
+ "version": "0.1.0",
5
+ "author": "iyulab",
6
+ "license": "MIT",
7
+ "keywords": [
8
+ "ai",
9
+ "llm",
10
+ "chat",
11
+ "conversation",
12
+ "components",
13
+ "web-components"
14
+ ],
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "https://github.com/iyulab/node-chat-components.git"
18
+ },
19
+ "files": [
20
+ "dist",
21
+ "package.json",
22
+ "README.md",
23
+ "CHANGELOG.md",
24
+ "LICENSE"
25
+ ],
26
+ "type": "module",
27
+ "types": "./dist/index.d.ts",
28
+ "main": "./dist/index.js",
29
+ "exports": {
30
+ ".": {
31
+ "types": "./src/index.d.ts",
32
+ "import": "./src/index.js"
33
+ },
34
+ "./dist/*": {
35
+ "types": "./src/*.d.ts",
36
+ "import": "./src/*"
37
+ }
38
+ },
39
+ "scripts": {
40
+ "start": "vite",
41
+ "build": "eslint && vite build"
42
+ },
43
+ "dependencies": {
44
+ "@iyulab/components": "0.1.10",
45
+ "dompurify": "^3.3.1",
46
+ "highlight.js": "^11.11.1",
47
+ "lit": "^3.3.1",
48
+ "marked": "^17.0.1",
49
+ "marked-alert": "^2.1.2",
50
+ "marked-footnote": "^1.4.0",
51
+ "marked-katex-extension": "^5.1.6"
52
+ },
53
+ "devDependencies": {
54
+ "@lit/react": "^1.0.8",
55
+ "@eslint/js": "^9.39.2",
56
+ "@types/node": "^25.0.3",
57
+ "eslint": "^9.39.2",
58
+ "eslint-plugin-lit": "^2.1.1",
59
+ "globals": "^16.5.0",
60
+ "typescript": "^5.9.3",
61
+ "typescript-eslint": "^8.50.0",
62
+ "vite": "^7.3.0",
63
+ "vite-plugin-dts": "^4.5.4"
64
+ }
65
+ }