@rool-dev/svelte 0.1.12 → 0.1.13-dev.adc78a6
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 +27 -0
- package/dist/rool.svelte.d.ts +3 -9
- package/dist/rool.svelte.d.ts.map +1 -1
- package/dist/rool.svelte.js +17 -13
- package/dist/space.svelte.d.ts +3 -2
- package/dist/space.svelte.d.ts.map +1 -1
- package/dist/space.svelte.js +17 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -49,6 +49,7 @@ The Svelte wrapper adds reactive state on top of the SDK:
|
|
|
49
49
|
| `rool.spacesLoading` | Whether spaces are loading |
|
|
50
50
|
| `rool.spacesError` | Error from loading spaces |
|
|
51
51
|
| `rool.connectionState` | SSE connection state |
|
|
52
|
+
| `rool.userStorage` | User storage (cross-device preferences) |
|
|
52
53
|
| `space.interactions` | Conversation interactions (auto-updates) |
|
|
53
54
|
| `collection.objects` | Objects matching a filter (auto-updates) |
|
|
54
55
|
| `collection.loading` | Whether collection is loading |
|
|
@@ -78,6 +79,7 @@ rool.destroy(); // Clean up all resources
|
|
|
78
79
|
// rool.spacesLoading → boolean
|
|
79
80
|
// rool.spacesError → Error | null
|
|
80
81
|
// rool.connectionState → 'connected' | 'disconnected' | 'reconnecting'
|
|
82
|
+
// rool.userStorage → Record<string, unknown>
|
|
81
83
|
</script>
|
|
82
84
|
|
|
83
85
|
{#if rool.spacesLoading}
|
|
@@ -91,6 +93,31 @@ rool.destroy(); // Clean up all resources
|
|
|
91
93
|
{/if}
|
|
92
94
|
```
|
|
93
95
|
|
|
96
|
+
### User Storage
|
|
97
|
+
|
|
98
|
+
Reactive cross-device storage for user preferences. Synced from server on `init()`, then kept up-to-date via SSE.
|
|
99
|
+
|
|
100
|
+
```svelte
|
|
101
|
+
<script>
|
|
102
|
+
const rool = createRool();
|
|
103
|
+
rool.init();
|
|
104
|
+
</script>
|
|
105
|
+
|
|
106
|
+
<!-- Reactive binding to storage values -->
|
|
107
|
+
{#if rool.userStorage.onboarding_complete}
|
|
108
|
+
<Dashboard />
|
|
109
|
+
{:else}
|
|
110
|
+
<Onboarding onstep={(step) => rool.setUserStorage('onboarding_step', step)} />
|
|
111
|
+
{/if}
|
|
112
|
+
|
|
113
|
+
<!-- Theme toggle -->
|
|
114
|
+
<button onclick={() => rool.setUserStorage('theme',
|
|
115
|
+
rool.userStorage.theme === 'dark' ? 'light' : 'dark'
|
|
116
|
+
)}>
|
|
117
|
+
Toggle theme
|
|
118
|
+
</button>
|
|
119
|
+
```
|
|
120
|
+
|
|
94
121
|
### Opening Spaces
|
|
95
122
|
|
|
96
123
|
```typescript
|
package/dist/rool.svelte.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ import { type ReactiveSpace } from './space.svelte.js';
|
|
|
6
6
|
* Provides:
|
|
7
7
|
* - Reactive auth state (`authenticated`)
|
|
8
8
|
* - Reactive spaces list (`spaces`)
|
|
9
|
+
* - Reactive user storage (`userStorage`)
|
|
9
10
|
* - Direct access to SDK spaces (no wrapper abstraction)
|
|
10
11
|
*/
|
|
11
12
|
declare class RoolImpl {
|
|
@@ -15,6 +16,7 @@ declare class RoolImpl {
|
|
|
15
16
|
spacesLoading: boolean;
|
|
16
17
|
spacesError: Error | null;
|
|
17
18
|
connectionState: ConnectionState;
|
|
19
|
+
userStorage: Record<string, unknown>;
|
|
18
20
|
constructor(config?: RoolClientConfig);
|
|
19
21
|
/**
|
|
20
22
|
* Initialize the client. Call on app startup.
|
|
@@ -49,19 +51,11 @@ declare class RoolImpl {
|
|
|
49
51
|
* Delete a space.
|
|
50
52
|
*/
|
|
51
53
|
deleteSpace(spaceId: string): Promise<void>;
|
|
52
|
-
/**
|
|
53
|
-
* Get a value from user storage (sync read from local cache).
|
|
54
|
-
*/
|
|
55
|
-
getUserStorage<T = unknown>(key: string): T | undefined;
|
|
56
54
|
/**
|
|
57
55
|
* Set a value in user storage.
|
|
58
|
-
* Updates
|
|
56
|
+
* Updates reactive state immediately, then syncs to server.
|
|
59
57
|
*/
|
|
60
58
|
setUserStorage(key: string, value: unknown): void;
|
|
61
|
-
/**
|
|
62
|
-
* Get all user storage data (sync read from local cache).
|
|
63
|
-
*/
|
|
64
|
-
getAllUserStorage(): Record<string, unknown>;
|
|
65
59
|
/**
|
|
66
60
|
* Search for a user by email.
|
|
67
61
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rool.svelte.d.ts","sourceRoot":"","sources":["../src/rool.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElE
|
|
1
|
+
{"version":3,"file":"rool.svelte.d.ts","sourceRoot":"","sources":["../src/rool.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,aAAa,EAAE,KAAK,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC5G,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAElE;;;;;;;;GAQG;AACH,cAAM,QAAQ;;IAMZ,aAAa,iBAAgC;IAC7C,MAAM,8BAAkD;IACxD,aAAa,UAAiB;IAC9B,WAAW,eAA8B;IACzC,eAAe,kBAA2C;IAC1D,WAAW,0BAAuC;gBAEtC,MAAM,CAAC,EAAE,gBAAgB;IA2DrC;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC;IAU9B;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI5B;;OAEG;IACH,MAAM,IAAI,IAAI;IAQd;;OAEG;IACG,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAO1F;;OAEG;IACG,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAO/F;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;OAEG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3C;;;OAGG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAKjD;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM;IAIxB;;;OAGG;IACG,aAAa,CACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,IAAI,EACb,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GACpC,OAAO,CAAC,aAAa,CAAC;IAOzB;;OAEG;IACH,IAAI,QAAQ,qCAEX;IAED;;OAEG;IACH,cAAc;IAId;;OAEG;IACH,OAAO,IAAI,IAAI;CAahB;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAE1D;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED,MAAM,MAAM,IAAI,GAAG,QAAQ,CAAC"}
|
package/dist/rool.svelte.js
CHANGED
|
@@ -6,6 +6,7 @@ import { wrapSpace } from './space.svelte.js';
|
|
|
6
6
|
* Provides:
|
|
7
7
|
* - Reactive auth state (`authenticated`)
|
|
8
8
|
* - Reactive spaces list (`spaces`)
|
|
9
|
+
* - Reactive user storage (`userStorage`)
|
|
9
10
|
* - Direct access to SDK spaces (no wrapper abstraction)
|
|
10
11
|
*/
|
|
11
12
|
class RoolImpl {
|
|
@@ -18,6 +19,7 @@ class RoolImpl {
|
|
|
18
19
|
spacesLoading = $state(false);
|
|
19
20
|
spacesError = $state(null);
|
|
20
21
|
connectionState = $state('disconnected');
|
|
22
|
+
userStorage = $state({});
|
|
21
23
|
constructor(config) {
|
|
22
24
|
this.#client = new RoolClient(config);
|
|
23
25
|
this.#setupEventListeners();
|
|
@@ -48,6 +50,17 @@ class RoolImpl {
|
|
|
48
50
|
const onSpaceRenamed = () => this.#refreshSpaces();
|
|
49
51
|
this.#client.on('spaceRenamed', onSpaceRenamed);
|
|
50
52
|
this.#unsubscribers.push(() => this.#client.off('spaceRenamed', onSpaceRenamed));
|
|
53
|
+
const onUserStorageChanged = ({ key, value }) => {
|
|
54
|
+
if (value === null || value === undefined) {
|
|
55
|
+
const { [key]: _, ...rest } = this.userStorage;
|
|
56
|
+
this.userStorage = rest;
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
this.userStorage = { ...this.userStorage, [key]: value };
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
this.#client.on('userStorageChanged', onUserStorageChanged);
|
|
63
|
+
this.#unsubscribers.push(() => this.#client.off('userStorageChanged', onUserStorageChanged));
|
|
51
64
|
}
|
|
52
65
|
async #refreshSpaces() {
|
|
53
66
|
this.spacesLoading = true;
|
|
@@ -69,6 +82,8 @@ class RoolImpl {
|
|
|
69
82
|
async init() {
|
|
70
83
|
this.authenticated = await this.#client.initialize();
|
|
71
84
|
if (this.authenticated) {
|
|
85
|
+
// Populate reactive storage from SDK cache (now fresh from server)
|
|
86
|
+
this.userStorage = this.#client.getAllUserStorage();
|
|
72
87
|
await this.#refreshSpaces();
|
|
73
88
|
}
|
|
74
89
|
return this.authenticated;
|
|
@@ -119,24 +134,13 @@ class RoolImpl {
|
|
|
119
134
|
deleteSpace(spaceId) {
|
|
120
135
|
return this.#client.deleteSpace(spaceId);
|
|
121
136
|
}
|
|
122
|
-
/**
|
|
123
|
-
* Get a value from user storage (sync read from local cache).
|
|
124
|
-
*/
|
|
125
|
-
getUserStorage(key) {
|
|
126
|
-
return this.#client.getUserStorage(key);
|
|
127
|
-
}
|
|
128
137
|
/**
|
|
129
138
|
* Set a value in user storage.
|
|
130
|
-
* Updates
|
|
139
|
+
* Updates reactive state immediately, then syncs to server.
|
|
131
140
|
*/
|
|
132
141
|
setUserStorage(key, value) {
|
|
133
142
|
this.#client.setUserStorage(key, value);
|
|
134
|
-
|
|
135
|
-
/**
|
|
136
|
-
* Get all user storage data (sync read from local cache).
|
|
137
|
-
*/
|
|
138
|
-
getAllUserStorage() {
|
|
139
|
-
return this.#client.getAllUserStorage();
|
|
143
|
+
// Reactive state updated via userStorageChanged event
|
|
140
144
|
}
|
|
141
145
|
/**
|
|
142
146
|
* Search for a user by email.
|
package/dist/space.svelte.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { RoolSpace, Interaction, RoolObject } from '@rool-dev/sdk';
|
|
1
|
+
import type { RoolSpace, Interaction, RoolObject, ConversationInfo } from '@rool-dev/sdk';
|
|
2
2
|
/**
|
|
3
3
|
* Options for creating a reactive collection.
|
|
4
4
|
* Same as FindObjectsOptions but without `prompt` (AI queries are too slow for reactive updates).
|
|
@@ -36,6 +36,7 @@ export type ReactiveCollection = ReactiveCollectionImpl;
|
|
|
36
36
|
declare class ReactiveSpaceImpl {
|
|
37
37
|
#private;
|
|
38
38
|
interactions: Interaction[];
|
|
39
|
+
conversations: ConversationInfo[];
|
|
39
40
|
constructor(space: RoolSpace);
|
|
40
41
|
get id(): string;
|
|
41
42
|
get name(): string;
|
|
@@ -82,7 +83,7 @@ declare class ReactiveSpaceImpl {
|
|
|
82
83
|
getConversationIds(): string[];
|
|
83
84
|
deleteConversation(...args: Parameters<RoolSpace['deleteConversation']>): Promise<void>;
|
|
84
85
|
renameConversation(...args: Parameters<RoolSpace['renameConversation']>): Promise<void>;
|
|
85
|
-
listConversations(): Promise<
|
|
86
|
+
listConversations(): Promise<ConversationInfo[]>;
|
|
86
87
|
getSystemInstruction(): string | undefined;
|
|
87
88
|
setSystemInstruction(...args: Parameters<RoolSpace['setSystemInstruction']>): Promise<void>;
|
|
88
89
|
uploadMedia(...args: Parameters<RoolSpace['uploadMedia']>): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space.svelte.d.ts","sourceRoot":"","sources":["../src/space.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAsB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"space.svelte.d.ts","sourceRoot":"","sources":["../src/space.svelte.ts"],"names":[],"mappings":"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"}
|
package/dist/space.svelte.js
CHANGED
|
@@ -96,9 +96,14 @@ class ReactiveSpaceImpl {
|
|
|
96
96
|
#unsubscribers = [];
|
|
97
97
|
// Reactive state
|
|
98
98
|
interactions = $state([]);
|
|
99
|
+
conversations = $state([]);
|
|
100
|
+
#conversationId = $state('');
|
|
99
101
|
constructor(space) {
|
|
100
102
|
this.#space = space;
|
|
101
103
|
this.interactions = space.getInteractions();
|
|
104
|
+
this.#conversationId = space.conversationId;
|
|
105
|
+
// Initial fetch of conversations (async)
|
|
106
|
+
this.#refreshConversations();
|
|
102
107
|
// Subscribe to conversation updates
|
|
103
108
|
const onConversationUpdated = () => {
|
|
104
109
|
this.interactions = space.getInteractions();
|
|
@@ -110,19 +115,29 @@ class ReactiveSpaceImpl {
|
|
|
110
115
|
};
|
|
111
116
|
space.on('reset', onReset);
|
|
112
117
|
this.#unsubscribers.push(() => space.off('reset', onReset));
|
|
113
|
-
// Update interactions when switching conversations
|
|
118
|
+
// Update interactions and conversationId when switching conversations
|
|
114
119
|
const onConversationIdChanged = () => {
|
|
120
|
+
this.#conversationId = space.conversationId;
|
|
115
121
|
this.interactions = space.getInteractions();
|
|
116
122
|
};
|
|
117
123
|
space.on('conversationIdChanged', onConversationIdChanged);
|
|
118
124
|
this.#unsubscribers.push(() => space.off('conversationIdChanged', onConversationIdChanged));
|
|
125
|
+
// Update conversations list when conversations change
|
|
126
|
+
const onConversationsChanged = () => {
|
|
127
|
+
this.#refreshConversations();
|
|
128
|
+
};
|
|
129
|
+
space.on('conversationsChanged', onConversationsChanged);
|
|
130
|
+
this.#unsubscribers.push(() => space.off('conversationsChanged', onConversationsChanged));
|
|
131
|
+
}
|
|
132
|
+
async #refreshConversations() {
|
|
133
|
+
this.conversations = await this.#space.listConversations();
|
|
119
134
|
}
|
|
120
135
|
// Proxy read-only properties
|
|
121
136
|
get id() { return this.#space.id; }
|
|
122
137
|
get name() { return this.#space.name; }
|
|
123
138
|
get role() { return this.#space.role; }
|
|
124
139
|
get userId() { return this.#space.userId; }
|
|
125
|
-
get conversationId() { return this.#
|
|
140
|
+
get conversationId() { return this.#conversationId; }
|
|
126
141
|
set conversationId(id) { this.#space.conversationId = id; }
|
|
127
142
|
// Proxy all methods
|
|
128
143
|
close() {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rool-dev/svelte",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13-dev.adc78a6",
|
|
4
4
|
"description": "Svelte 5 runes for Rool Spaces",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"svelte": "./dist/index.js",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
"license": "MIT",
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@rool-dev/sdk": "0.1.
|
|
44
|
+
"@rool-dev/sdk": "0.1.21"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"svelte": "^5.0.0"
|