@makolabs/ripple 1.7.11 → 1.9.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 (135) hide show
  1. package/README.md +16 -0
  2. package/dist/adapters/ai/OpenAIAdapter.d.ts +8 -1
  3. package/dist/adapters/ai/OpenAIAdapter.js +2 -2
  4. package/dist/adapters/storage/BaseAdapter.js +2 -2
  5. package/dist/adapters/storage/S3Adapter.js +1 -6
  6. package/dist/adapters/storage/types.d.ts +3 -3
  7. package/dist/ai/AIChatInterface.svelte +0 -1
  8. package/dist/ai/ai-chat-interface.d.ts +21 -22
  9. package/dist/ai/ai-types.d.ts +44 -0
  10. package/dist/ai/ai-types.js +1 -0
  11. package/dist/ai/content-detector.js +0 -1
  12. package/dist/button/Button.svelte +9 -2
  13. package/dist/button/button-types.d.ts +25 -0
  14. package/dist/button/button-types.js +1 -0
  15. package/dist/button/button.d.ts +39 -40
  16. package/dist/charts/Chart.svelte +11 -23
  17. package/dist/charts/chart-types.d.ts +137 -0
  18. package/dist/charts/chart-types.js +1 -0
  19. package/dist/drawer/Drawer.svelte +57 -23
  20. package/dist/drawer/drawer-types.d.ts +33 -0
  21. package/dist/drawer/drawer-types.js +1 -0
  22. package/dist/drawer/drawer.d.ts +18 -19
  23. package/dist/elements/accordion/Accordion.svelte +39 -18
  24. package/dist/elements/accordion/accordion-types.d.ts +29 -0
  25. package/dist/elements/accordion/accordion-types.js +1 -0
  26. package/dist/elements/accordion/accordion.d.ts +21 -22
  27. package/dist/elements/alert/Alert.svelte +20 -8
  28. package/dist/elements/badge/Badge.svelte +5 -2
  29. package/dist/elements/badge/badge-types.d.ts +11 -0
  30. package/dist/elements/badge/badge-types.js +1 -0
  31. package/dist/elements/badge/badge.d.ts +39 -40
  32. package/dist/elements/dropdown/Dropdown.svelte +18 -2
  33. package/dist/elements/dropdown/Select.svelte +17 -5
  34. package/dist/elements/dropdown/dropdown-types.d.ts +68 -0
  35. package/dist/elements/dropdown/dropdown-types.js +1 -0
  36. package/dist/elements/dropdown/dropdown.d.ts +18 -19
  37. package/dist/elements/dropdown/select.d.ts +18 -19
  38. package/dist/elements/file-upload/file-upload-types.d.ts +68 -0
  39. package/dist/elements/file-upload/file-upload-types.js +1 -0
  40. package/dist/elements/pagination/Pagination.svelte +15 -2
  41. package/dist/elements/pagination/Pagination.svelte.d.ts +1 -0
  42. package/dist/elements/progress/progress-types.d.ts +22 -0
  43. package/dist/elements/progress/progress-types.js +1 -0
  44. package/dist/elements/timeline/timeline-types.d.ts +11 -0
  45. package/dist/elements/timeline/timeline-types.js +1 -0
  46. package/dist/filters/filter-types.d.ts +24 -0
  47. package/dist/filters/filter-types.js +1 -0
  48. package/dist/forms/Checkbox.svelte +16 -4
  49. package/dist/forms/Form.svelte +0 -2
  50. package/dist/forms/Input.svelte +19 -5
  51. package/dist/forms/NumberInput.svelte +8 -1
  52. package/dist/forms/RadioInputs.svelte +14 -5
  53. package/dist/forms/Slider.svelte +6 -4
  54. package/dist/forms/Toggle.svelte +67 -29
  55. package/dist/forms/form-types.d.ts +168 -0
  56. package/dist/forms/form-types.js +1 -0
  57. package/dist/forms/slider.d.ts +72 -10
  58. package/dist/forms/slider.js +21 -0
  59. package/dist/header/Breadcrumbs.svelte +47 -24
  60. package/dist/header/PageHeader.svelte +12 -2
  61. package/dist/header/breadcrumbs.d.ts +47 -39
  62. package/dist/header/header-types.d.ts +43 -0
  63. package/dist/header/header-types.js +1 -0
  64. package/dist/helper/deprecation.d.ts +14 -0
  65. package/dist/helper/deprecation.js +24 -0
  66. package/dist/helper/testid.d.ts +10 -0
  67. package/dist/helper/testid.js +17 -0
  68. package/dist/index.d.ts +37 -1007
  69. package/dist/index.js +38 -14
  70. package/dist/layout/activity-list/activity-list-types.d.ts +30 -0
  71. package/dist/layout/activity-list/activity-list-types.js +1 -0
  72. package/dist/layout/activity-list/activity-list.d.ts +21 -22
  73. package/dist/layout/card/Card.svelte +19 -5
  74. package/dist/layout/card/card-types.d.ts +43 -0
  75. package/dist/layout/card/card-types.js +1 -0
  76. package/dist/layout/card/card.d.ts +21 -22
  77. package/dist/layout/card/metric-card.d.ts +3 -3
  78. package/dist/layout/card/ranked-card.d.ts +2 -1
  79. package/dist/layout/navbar/Navbar.svelte +14 -16
  80. package/dist/layout/navbar/navbar-types.d.ts +19 -0
  81. package/dist/layout/navbar/navbar-types.js +1 -0
  82. package/dist/layout/navbar/navbar.d.ts +19 -19
  83. package/dist/layout/sidebar/Sidebar.svelte +6 -3
  84. package/dist/layout/sidebar/sidebar-types.d.ts +59 -0
  85. package/dist/layout/sidebar/sidebar-types.js +1 -0
  86. package/dist/layout/table/Table.svelte +237 -303
  87. package/dist/layout/table/table-types.d.ts +82 -0
  88. package/dist/layout/table/table-types.js +1 -0
  89. package/dist/layout/table/table.d.ts +24 -25
  90. package/dist/layout/tabs/Tab.svelte +3 -1
  91. package/dist/layout/tabs/TabGroup.svelte +7 -4
  92. package/dist/layout/tabs/tabs-types.d.ts +43 -0
  93. package/dist/layout/tabs/tabs-types.js +1 -0
  94. package/dist/layout/tabs/tabs.d.ts +39 -40
  95. package/dist/modal/Modal.svelte +124 -21
  96. package/dist/modal/modal-types.d.ts +34 -0
  97. package/dist/modal/modal-types.js +1 -0
  98. package/dist/modal/modal.d.ts +18 -19
  99. package/dist/modal/modal.js +2 -2
  100. package/dist/types/echarts.d.ts +27 -0
  101. package/dist/user-management/UserModal.svelte +1 -1
  102. package/dist/user-management/UserTable.svelte +3 -3
  103. package/dist/user-management/UserViewModal.svelte +2 -2
  104. package/dist/user-management/user-management-types.d.ts +156 -0
  105. package/dist/user-management/user-management-types.js +1 -0
  106. package/dist/variants.d.ts +13 -13
  107. package/package.json +9 -7
  108. package/dist/ai/AIChatInterfaceTestWrapper.svelte +0 -26
  109. package/dist/ai/AIChatInterfaceTestWrapper.svelte.d.ts +0 -17
  110. package/dist/button/ButtonTestWrapper.svelte +0 -10
  111. package/dist/button/ButtonTestWrapper.svelte.d.ts +0 -7
  112. package/dist/drawer/DrawerTestWrapper.svelte +0 -19
  113. package/dist/drawer/DrawerTestWrapper.svelte.d.ts +0 -9
  114. package/dist/elements/accordion/AccordionTestWrapper.svelte +0 -21
  115. package/dist/elements/accordion/AccordionTestWrapper.svelte.d.ts +0 -10
  116. package/dist/elements/badge/BadgeTestWrapper.svelte +0 -14
  117. package/dist/elements/badge/BadgeTestWrapper.svelte.d.ts +0 -9
  118. package/dist/forms/CheckboxTestWrapper.svelte +0 -8
  119. package/dist/forms/CheckboxTestWrapper.svelte.d.ts +0 -4
  120. package/dist/forms/InputTestWrapper.svelte +0 -8
  121. package/dist/forms/InputTestWrapper.svelte.d.ts +0 -4
  122. package/dist/forms/ToggleTestWrapper.svelte +0 -8
  123. package/dist/forms/ToggleTestWrapper.svelte.d.ts +0 -7
  124. package/dist/layout/card/CardTestWrapper.svelte +0 -15
  125. package/dist/layout/card/CardTestWrapper.svelte.d.ts +0 -7
  126. package/dist/modal/ModalTestWrapper.svelte +0 -20
  127. package/dist/modal/ModalTestWrapper.svelte.d.ts +0 -8
  128. package/dist/user-management/UserManagementTestWrapper.svelte +0 -32
  129. package/dist/user-management/UserManagementTestWrapper.svelte.d.ts +0 -12
  130. package/dist/user-management/UserModalTestWrapper.svelte +0 -22
  131. package/dist/user-management/UserModalTestWrapper.svelte.d.ts +0 -7
  132. package/dist/user-management/UserTableTestWrapper.svelte +0 -41
  133. package/dist/user-management/UserTableTestWrapper.svelte.d.ts +0 -7
  134. package/dist/user-management/UserViewModalTestWrapper.svelte +0 -22
  135. package/dist/user-management/UserViewModalTestWrapper.svelte.d.ts +0 -7
@@ -0,0 +1,34 @@
1
+ import type { ClassValue } from 'tailwind-variants';
2
+ import type { Snippet } from 'svelte';
3
+ import type { VariantSizes } from '../index.js';
4
+ export type ModalProps = {
5
+ open?: boolean;
6
+ onclose?: () => void;
7
+ title?: string;
8
+ description?: string;
9
+ size?: VariantSizes;
10
+ hideCloseButton?: boolean;
11
+ class?: ClassValue;
12
+ /** @deprecated Use contentClass instead */
13
+ contentclass?: ClassValue;
14
+ contentClass?: ClassValue;
15
+ /** @deprecated Use bodyClass instead */
16
+ bodyclass?: ClassValue;
17
+ bodyClass?: ClassValue;
18
+ /** @deprecated Use titleClass instead */
19
+ titleclass?: ClassValue;
20
+ titleClass?: ClassValue;
21
+ /** @deprecated Use headerClass instead */
22
+ headerclass?: ClassValue;
23
+ headerClass?: ClassValue;
24
+ /** @deprecated Use backdropClass instead */
25
+ backdropclass?: ClassValue;
26
+ backdropClass?: ClassValue;
27
+ /** @deprecated Use footerClass instead */
28
+ footerclass?: ClassValue;
29
+ footerClass?: ClassValue;
30
+ children?: Snippet;
31
+ footer?: Snippet;
32
+ header?: Snippet;
33
+ testId?: string;
34
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,22 +1,21 @@
1
- import { Size } from '../index.js';
2
1
  export declare const modal: import("tailwind-variants").TVReturnType<{
3
2
  size: {
4
- [Size.XS]: {
3
+ xs: {
5
4
  container: string;
6
5
  };
7
- [Size.SM]: {
6
+ sm: {
8
7
  container: string;
9
8
  };
10
- [Size.BASE]: {
9
+ base: {
11
10
  container: string;
12
11
  };
13
- [Size.LG]: {
12
+ lg: {
14
13
  container: string;
15
14
  };
16
- [Size.XL]: {
15
+ xl: {
17
16
  container: string;
18
17
  };
19
- [Size.XXL]: {
18
+ "2xl": {
20
19
  container: string;
21
20
  };
22
21
  };
@@ -32,22 +31,22 @@ export declare const modal: import("tailwind-variants").TVReturnType<{
32
31
  close: string;
33
32
  }, undefined, {
34
33
  size: {
35
- [Size.XS]: {
34
+ xs: {
36
35
  container: string;
37
36
  };
38
- [Size.SM]: {
37
+ sm: {
39
38
  container: string;
40
39
  };
41
- [Size.BASE]: {
40
+ base: {
42
41
  container: string;
43
42
  };
44
- [Size.LG]: {
43
+ lg: {
45
44
  container: string;
46
45
  };
47
- [Size.XL]: {
46
+ xl: {
48
47
  container: string;
49
48
  };
50
- [Size.XXL]: {
49
+ "2xl": {
51
50
  container: string;
52
51
  };
53
52
  };
@@ -63,22 +62,22 @@ export declare const modal: import("tailwind-variants").TVReturnType<{
63
62
  close: string;
64
63
  }, import("tailwind-variants").TVReturnType<{
65
64
  size: {
66
- [Size.XS]: {
65
+ xs: {
67
66
  container: string;
68
67
  };
69
- [Size.SM]: {
68
+ sm: {
70
69
  container: string;
71
70
  };
72
- [Size.BASE]: {
71
+ base: {
73
72
  container: string;
74
73
  };
75
- [Size.LG]: {
74
+ lg: {
76
75
  container: string;
77
76
  };
78
- [Size.XL]: {
77
+ xl: {
79
78
  container: string;
80
79
  };
81
- [Size.XXL]: {
80
+ "2xl": {
82
81
  container: string;
83
82
  };
84
83
  };
@@ -4,10 +4,10 @@ export const modal = tv({
4
4
  slots: {
5
5
  base: 'fixed inset-0 z-50 flex items-center justify-center p-4',
6
6
  backdrop: 'fixed inset-0 bg-black/50 backdrop-blur-sm',
7
- container: 'relative w-full flex flex-col bg-white rounded-xl shadow-2xl overflow-hidden',
7
+ container: 'relative w-full flex flex-col bg-white rounded-xl shadow-2xl',
8
8
  header: 'px-6 py-4 border-b border-default-200 flex items-center justify-between shrink-0',
9
9
  body: 'flex-1 px-6 py-4 overflow-y-auto',
10
- footer: 'px-6 py-4 border-t border-default-200 bg-default-50/80 shrink-0',
10
+ footer: 'px-6 py-4 border-t border-default-200 bg-default-50/80 rounded-b-xl shrink-0',
11
11
  title: 'text-lg font-semibold text-default-900',
12
12
  description: 'text-sm text-default-600 mt-1',
13
13
  close: 'p-2 -mr-2 ml-4 rounded-lg text-default-400 hover:text-default-600 hover:bg-default-100 transition-colors'
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Ambient module declarations for echarts tree-shakable imports.
3
+ *
4
+ * ECharts v6 ships .d.ts files for each subpath (core.d.ts, charts.d.ts,
5
+ * components.d.ts, renderers.d.ts), but its package.json "exports" map
6
+ * does not include "types" conditions for these subpaths. Under TypeScript's
7
+ * "nodenext" module resolution this prevents the types from being found.
8
+ *
9
+ * These declarations bridge the gap by re-exporting from the internal
10
+ * typed paths that ARE listed in the exports map.
11
+ */
12
+
13
+ declare module 'echarts/core' {
14
+ export * from 'echarts/types/dist/core';
15
+ }
16
+
17
+ declare module 'echarts/charts' {
18
+ export * from 'echarts/types/dist/charts';
19
+ }
20
+
21
+ declare module 'echarts/components' {
22
+ export * from 'echarts/types/dist/components';
23
+ }
24
+
25
+ declare module 'echarts/renderers' {
26
+ export * from 'echarts/types/dist/renderers';
27
+ }
@@ -287,7 +287,7 @@
287
287
  {open}
288
288
  onclose={handleClose}
289
289
  title={getModalTitle()}
290
- contentclass="max-w-4xl"
290
+ contentClass="max-w-4xl"
291
291
  class={cn(className)}
292
292
  >
293
293
  <form bind:this={formElement} onsubmit={handleSubmit} class="flex gap-6" data-testid="user-form">
@@ -223,8 +223,8 @@
223
223
  onpagesizechange={onPageSizeChange}
224
224
  onsort={handleTableSort}
225
225
  paginationPosition="bottom"
226
- paginationclass="whitespace-nowrap flex-wrap gap-3 justify-between items-center"
227
- wrapperclass="overflow-x-auto"
228
- tableclass="min-w-full w-full"
226
+ paginationClass="whitespace-nowrap flex-wrap gap-3 justify-between items-center"
227
+ wrapperClass="overflow-x-auto"
228
+ tableClass="min-w-full w-full"
229
229
  class={className}
230
230
  />
@@ -83,8 +83,8 @@
83
83
  {open}
84
84
  onclose={handleClose}
85
85
  title={getModalTitle()}
86
- contentclass="max-w-4xl"
87
- bodyclass="flex flex-col"
86
+ contentClass="max-w-4xl"
87
+ bodyClass="flex flex-col"
88
88
  class={cn(className)}
89
89
  >
90
90
  <div class="flex gap-6">
@@ -0,0 +1,156 @@
1
+ import type { ClassValue } from 'tailwind-variants';
2
+ export interface GetUsersOptions {
3
+ page: number;
4
+ pageSize: number;
5
+ sortBy?: string;
6
+ sortOrder?: 'asc' | 'desc';
7
+ query?: string;
8
+ }
9
+ export interface GetUsersResult {
10
+ users: User[];
11
+ totalUsers: number;
12
+ }
13
+ export interface UserEmail {
14
+ email_address: string;
15
+ verified?: boolean;
16
+ }
17
+ export interface UserPhone {
18
+ phone_number: string;
19
+ verified?: boolean;
20
+ }
21
+ export interface User {
22
+ id: string;
23
+ first_name?: string;
24
+ last_name?: string;
25
+ username?: string;
26
+ email_addresses?: UserEmail[];
27
+ phone_numbers?: UserPhone[];
28
+ image_url?: string;
29
+ created_at?: number;
30
+ last_sign_in_at?: number;
31
+ private_metadata?: Record<string, unknown>;
32
+ public_metadata?: Record<string, unknown>;
33
+ permissions?: string[];
34
+ role?: string;
35
+ }
36
+ export interface Permission {
37
+ id: string;
38
+ name: string;
39
+ description?: string;
40
+ category?: string;
41
+ }
42
+ export interface Role {
43
+ value: string;
44
+ label: string;
45
+ description?: string;
46
+ permissions: string[];
47
+ }
48
+ export interface UserTableProps {
49
+ users: User[];
50
+ loading?: boolean;
51
+ currentPage?: number;
52
+ pageSize?: number;
53
+ totalUsers?: number;
54
+ onPageChange: (page: number) => void;
55
+ onPageSizeChange: (size: number) => void;
56
+ onSort?: (state: {
57
+ column: string | null;
58
+ direction: 'asc' | 'desc' | null;
59
+ }) => void;
60
+ onView: (user: User) => void;
61
+ onEdit: (user: User) => void;
62
+ onDelete: (userId: string) => void;
63
+ class?: ClassValue;
64
+ testId?: string;
65
+ }
66
+ export interface UserModalProps {
67
+ open?: boolean;
68
+ user?: User | null;
69
+ roles?: Role[];
70
+ adapter?: UserManagementAdapter;
71
+ loadingPermissions?: boolean;
72
+ onSave: (user: User, mode: 'create' | 'edit') => void | Promise<void>;
73
+ onClose?: () => void;
74
+ class?: ClassValue;
75
+ testId?: string;
76
+ }
77
+ export interface UserViewModalProps {
78
+ open?: boolean;
79
+ user: User | null;
80
+ permissions?: Permission[];
81
+ roles?: Role[];
82
+ onEdit?: (user: User) => void;
83
+ onRegenerateApiKey?: (userId: string) => Promise<void>;
84
+ onClose: () => void;
85
+ class?: ClassValue;
86
+ testId?: string;
87
+ }
88
+ /**
89
+ * User Management Adapter Interface
90
+ *
91
+ * Defines the contract for user management adapters.
92
+ * Adapters can be remote function modules (returning RemoteQuery/RemoteCommand)
93
+ * or regular async function modules (returning Promise).
94
+ *
95
+ * Uses PromiseLike to accept both Promise and RemoteQuery/RemoteCommand types.
96
+ */
97
+ export interface UserManagementAdapter {
98
+ getUsers: (options: GetUsersOptions) => PromiseLike<GetUsersResult>;
99
+ createUser: (userData: Partial<User>) => PromiseLike<User>;
100
+ updateUser: (options: {
101
+ userId: string;
102
+ userData: Partial<User>;
103
+ }) => PromiseLike<User>;
104
+ deleteUser: (userId: string) => PromiseLike<void>;
105
+ deleteUsers: (userIds: string[]) => PromiseLike<void>;
106
+ getUserPermissions: (userId: string) => PromiseLike<string[]>;
107
+ updateUserPermissions: (options: {
108
+ userId: string;
109
+ permissions: string[];
110
+ }) => PromiseLike<void>;
111
+ generateApiKey?: (options: {
112
+ userId: string;
113
+ permissions: string[];
114
+ revokeOld?: boolean;
115
+ }) => PromiseLike<{
116
+ success: boolean;
117
+ apiKey: string;
118
+ message: string;
119
+ verificationWarning?: string;
120
+ }>;
121
+ verifyToken?: (options: {
122
+ apiKey: string;
123
+ }) => PromiseLike<{
124
+ valid: boolean;
125
+ scopes?: string[];
126
+ error?: string;
127
+ token?: string;
128
+ }>;
129
+ }
130
+ export interface UserManagementProps {
131
+ /**
132
+ * Adapter module containing remote functions or async functions
133
+ * Should be imported from a .remote.ts file
134
+ * If not provided, uses the default adapter from @makolabs/ripple
135
+ *
136
+ * Example:
137
+ * ```ts
138
+ * import * as adapter from './adapter.remote';
139
+ * <UserManagement adapter={adapter} roles={roles} />
140
+ * ```
141
+ */
142
+ adapter: UserManagementAdapter;
143
+ /**
144
+ * Available roles for user assignment
145
+ */
146
+ roles?: Role[];
147
+ /**
148
+ * Available permissions for display (optional)
149
+ */
150
+ permissions?: Permission[];
151
+ class?: ClassValue;
152
+ testId?: string;
153
+ }
154
+ export interface FormErrors {
155
+ [key: string]: string;
156
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -1,20 +1,20 @@
1
1
  import type { ChartColors, VariantColors, VariantSizes } from './index.js';
2
2
  export declare const Color: {
3
- DEFAULT: string;
4
- PRIMARY: string;
5
- SECONDARY: string;
6
- INFO: string;
7
- SUCCESS: string;
8
- WARNING: string;
9
- DANGER: string;
3
+ readonly DEFAULT: "default";
4
+ readonly PRIMARY: "primary";
5
+ readonly SECONDARY: "secondary";
6
+ readonly INFO: "info";
7
+ readonly SUCCESS: "success";
8
+ readonly WARNING: "warning";
9
+ readonly DANGER: "danger";
10
10
  };
11
11
  export declare const Size: {
12
- XS: string;
13
- SM: string;
14
- BASE: string;
15
- LG: string;
16
- XL: string;
17
- XXL: string;
12
+ readonly XS: "xs";
13
+ readonly SM: "sm";
14
+ readonly BASE: "base";
15
+ readonly LG: "lg";
16
+ readonly XL: "xl";
17
+ readonly XXL: "2xl";
18
18
  };
19
19
  export declare const ChartColor: {
20
20
  readonly HEALTH: "health";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@makolabs/ripple",
3
- "version": "1.7.11",
3
+ "version": "1.9.0",
4
4
  "description": "Simple Svelte 5 powered component library ✨",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "repository": {
@@ -58,6 +58,8 @@
58
58
  "@storybook/addon-docs": "^10.0.7",
59
59
  "@storybook/addon-svelte-csf": "^5.0.10",
60
60
  "@storybook/sveltekit": "^10.0.7",
61
+ "@sveltejs/adapter-static": "^3.0.10",
62
+ "@sveltejs/kit": "^2.48.4",
61
63
  "@sveltejs/package": "^2.5.4",
62
64
  "@sveltejs/vite-plugin-svelte": "^6.2.1",
63
65
  "@tailwindcss/vite": "^4.1.17",
@@ -112,17 +114,17 @@
112
114
  "spinner",
113
115
  "toast"
114
116
  ],
117
+ "engines": {
118
+ "node": ">=20"
119
+ },
120
+ "lint-staged": {
121
+ "*.{js,ts,svelte,css,md,json}": "prettier --write"
122
+ },
115
123
  "dependencies": {
116
124
  "@friendofsvelte/mermaid": "^0.0.4",
117
- "@friendofsvelte/state": "^0.0.6-ts",
118
- "@sveltejs/adapter-static": "^3.0.10",
119
- "@sveltejs/kit": "^2.48.4",
120
- "compromise": "^14.14.4",
121
125
  "dayjs": "^1.11.19",
122
126
  "echarts": "^6.0.0",
123
127
  "marked": "^17.0.0",
124
- "mem0ai": "^2.1.38",
125
- "natural": "^8.1.0",
126
128
  "svelte-highlight": "^7.9.0",
127
129
  "svelte-sonner": "^1.0.6",
128
130
  "tailwind-merge": "^3.4.0",
@@ -1,26 +0,0 @@
1
- <script lang="ts">
2
- import AIChatInterface from './AIChatInterface.svelte';
3
- import type { AIAdapter } from '../adapters/ai/index.js';
4
- import type { ChatMessage, VariantColors } from '../index.js';
5
-
6
- interface AIChatInterfaceTestWrapperProps {
7
- adapter: AIAdapter;
8
- title?: string;
9
- subtitle?: string;
10
- placeholder?: string;
11
- color?: VariantColors;
12
- disabled?: boolean;
13
- loading?: boolean;
14
- messages?: ChatMessage[];
15
- class?: string;
16
- context?: Record<string, unknown>;
17
- }
18
-
19
- let {
20
- adapter,
21
- messages = $bindable([]),
22
- ...restProps
23
- }: AIChatInterfaceTestWrapperProps = $props();
24
- </script>
25
-
26
- <AIChatInterface {adapter} bind:messages {...restProps} />
@@ -1,17 +0,0 @@
1
- import type { AIAdapter } from '../adapters/ai/index.js';
2
- import type { ChatMessage, VariantColors } from '../index.js';
3
- interface AIChatInterfaceTestWrapperProps {
4
- adapter: AIAdapter;
5
- title?: string;
6
- subtitle?: string;
7
- placeholder?: string;
8
- color?: VariantColors;
9
- disabled?: boolean;
10
- loading?: boolean;
11
- messages?: ChatMessage[];
12
- class?: string;
13
- context?: Record<string, unknown>;
14
- }
15
- declare const AIChatInterfaceTestWrapper: import("svelte").Component<AIChatInterfaceTestWrapperProps, {}, "messages">;
16
- type AIChatInterfaceTestWrapper = ReturnType<typeof AIChatInterfaceTestWrapper>;
17
- export default AIChatInterfaceTestWrapper;
@@ -1,10 +0,0 @@
1
- <script lang="ts">
2
- import Button from './Button.svelte';
3
- import type { ButtonProps } from '../index.js';
4
-
5
- let { text = '', ...buttonProps }: ButtonProps & { text?: string } = $props();
6
- </script>
7
-
8
- <Button {...buttonProps}>
9
- {text}
10
- </Button>
@@ -1,7 +0,0 @@
1
- import type { ButtonProps } from '../index.js';
2
- type $$ComponentProps = ButtonProps & {
3
- text?: string;
4
- };
5
- declare const ButtonTestWrapper: import("svelte").Component<$$ComponentProps, {}, "">;
6
- type ButtonTestWrapper = ReturnType<typeof ButtonTestWrapper>;
7
- export default ButtonTestWrapper;
@@ -1,19 +0,0 @@
1
- <script lang="ts">
2
- import Drawer from './Drawer.svelte';
3
-
4
- let {
5
- title,
6
- content,
7
- open = $bindable(false),
8
- onclose
9
- }: {
10
- title: string;
11
- content: string;
12
- open?: boolean;
13
- onclose?: () => void;
14
- } = $props();
15
- </script>
16
-
17
- <Drawer {title} bind:open {onclose}>
18
- {content}
19
- </Drawer>
@@ -1,9 +0,0 @@
1
- type $$ComponentProps = {
2
- title: string;
3
- content: string;
4
- open?: boolean;
5
- onclose?: () => void;
6
- };
7
- declare const DrawerTestWrapper: import("svelte").Component<$$ComponentProps, {}, "open">;
8
- type DrawerTestWrapper = ReturnType<typeof DrawerTestWrapper>;
9
- export default DrawerTestWrapper;
@@ -1,21 +0,0 @@
1
- <script lang="ts">
2
- import Accordion from './Accordion.svelte';
3
-
4
- let {
5
- title,
6
- content,
7
- open = $bindable(false),
8
- onexpand,
9
- oncollapse
10
- }: {
11
- title: string;
12
- content: string;
13
- open?: boolean;
14
- onexpand?: () => void;
15
- oncollapse?: () => void;
16
- } = $props();
17
- </script>
18
-
19
- <Accordion {title} bind:open {onexpand} {oncollapse}>
20
- {content}
21
- </Accordion>
@@ -1,10 +0,0 @@
1
- type $$ComponentProps = {
2
- title: string;
3
- content: string;
4
- open?: boolean;
5
- onexpand?: () => void;
6
- oncollapse?: () => void;
7
- };
8
- declare const AccordionTestWrapper: import("svelte").Component<$$ComponentProps, {}, "open">;
9
- type AccordionTestWrapper = ReturnType<typeof AccordionTestWrapper>;
10
- export default AccordionTestWrapper;
@@ -1,14 +0,0 @@
1
- <script lang="ts">
2
- import Badge from './Badge.svelte';
3
-
4
- let {
5
- text,
6
- color,
7
- size,
8
- onclose
9
- }: { text: string; color?: string; size?: string; onclose?: () => void } = $props();
10
- </script>
11
-
12
- <Badge {color} {size} {onclose}>
13
- {text}
14
- </Badge>
@@ -1,9 +0,0 @@
1
- type $$ComponentProps = {
2
- text: string;
3
- color?: string;
4
- size?: string;
5
- onclose?: () => void;
6
- };
7
- declare const BadgeTestWrapper: import("svelte").Component<$$ComponentProps, {}, "">;
8
- type BadgeTestWrapper = ReturnType<typeof BadgeTestWrapper>;
9
- export default BadgeTestWrapper;
@@ -1,8 +0,0 @@
1
- <script lang="ts">
2
- import Checkbox from './Checkbox.svelte';
3
- import type { CheckboxProps } from '../index.js';
4
-
5
- let { ...checkboxProps }: CheckboxProps = $props();
6
- </script>
7
-
8
- <Checkbox {...checkboxProps} />
@@ -1,4 +0,0 @@
1
- import type { CheckboxProps } from '../index.js';
2
- declare const CheckboxTestWrapper: import("svelte").Component<CheckboxProps, {}, "">;
3
- type CheckboxTestWrapper = ReturnType<typeof CheckboxTestWrapper>;
4
- export default CheckboxTestWrapper;
@@ -1,8 +0,0 @@
1
- <script lang="ts">
2
- import Input from './Input.svelte';
3
- import type { InputProps } from '../index.js';
4
-
5
- let { ...inputProps }: InputProps = $props();
6
- </script>
7
-
8
- <Input {...inputProps} />
@@ -1,4 +0,0 @@
1
- import type { InputProps } from '../index.js';
2
- declare const InputTestWrapper: import("svelte").Component<InputProps, {}, "">;
3
- type InputTestWrapper = ReturnType<typeof InputTestWrapper>;
4
- export default InputTestWrapper;
@@ -1,8 +0,0 @@
1
- <script lang="ts">
2
- import Toggle from './Toggle.svelte';
3
- import type { ToggleProps } from '../index.js';
4
-
5
- let { label = '', ...toggleProps }: ToggleProps & { label?: string } = $props();
6
- </script>
7
-
8
- <Toggle {label} {...toggleProps} />
@@ -1,7 +0,0 @@
1
- import type { ToggleProps } from '../index.js';
2
- type $$ComponentProps = ToggleProps & {
3
- label?: string;
4
- };
5
- declare const ToggleTestWrapper: import("svelte").Component<$$ComponentProps, {}, "">;
6
- type ToggleTestWrapper = ReturnType<typeof ToggleTestWrapper>;
7
- export default ToggleTestWrapper;
@@ -1,15 +0,0 @@
1
- <script lang="ts">
2
- import Card from './Card.svelte';
3
-
4
- let {
5
- title,
6
- content
7
- }: {
8
- title?: string;
9
- content: string;
10
- } = $props();
11
- </script>
12
-
13
- <Card {title}>
14
- {content}
15
- </Card>
@@ -1,7 +0,0 @@
1
- type $$ComponentProps = {
2
- title?: string;
3
- content: string;
4
- };
5
- declare const CardTestWrapper: import("svelte").Component<$$ComponentProps, {}, "">;
6
- type CardTestWrapper = ReturnType<typeof CardTestWrapper>;
7
- export default CardTestWrapper;