@rozenite/storage-plugin 2.1.0 → 2.3.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 (99) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/dist/devtools/assets/panel-CcThj-0Z.js +32 -0
  3. package/dist/devtools/assets/panel-DTYbHqnH.css +1 -0
  4. package/dist/devtools/panel.html +2 -2
  5. package/dist/react-native/cjs/package.json +3 -0
  6. package/dist/react-native/cjs/react-native.js +38 -0
  7. package/dist/react-native/cjs/src/react-native/adapters/async-storage.js +60 -0
  8. package/dist/react-native/cjs/src/react-native/adapters/index.js +10 -0
  9. package/dist/react-native/cjs/src/react-native/adapters/mmkv.js +143 -0
  10. package/dist/react-native/cjs/src/react-native/adapters/secure-storage.js +51 -0
  11. package/dist/react-native/cjs/src/react-native/entry-preview-pagination.js +198 -0
  12. package/dist/react-native/cjs/src/react-native/export-snapshot.js +70 -0
  13. package/dist/react-native/cjs/src/react-native/full-entry-request.js +72 -0
  14. package/dist/react-native/cjs/src/react-native/import.js +185 -0
  15. package/dist/react-native/cjs/src/react-native/storage-discovery.js +69 -0
  16. package/dist/react-native/cjs/src/react-native/storage-view.js +128 -0
  17. package/dist/react-native/cjs/src/react-native/useRozeniteStoragePlugin.js +145 -0
  18. package/dist/react-native/cjs/src/react-native/useStorageAgentTools.js +228 -0
  19. package/dist/react-native/cjs/src/shared/agent-tools.js +119 -0
  20. package/dist/react-native/cjs/src/shared/entry-preview.js +48 -0
  21. package/dist/react-native/cjs/src/shared/messaging.js +2 -0
  22. package/dist/react-native/cjs/src/shared/snapshot.js +185 -0
  23. package/dist/react-native/cjs/src/shared/types.js +13 -0
  24. package/dist/react-native/package.json +3 -0
  25. package/dist/react-native/react-native.d.ts +7 -0
  26. package/dist/react-native/react-native.js +40 -0
  27. package/dist/react-native/src/react-native/adapters/async-storage.d.ts +34 -0
  28. package/dist/react-native/src/react-native/adapters/async-storage.js +56 -0
  29. package/dist/react-native/src/react-native/adapters/index.d.ts +6 -0
  30. package/dist/react-native/src/react-native/adapters/index.js +3 -0
  31. package/dist/react-native/src/react-native/adapters/mmkv.d.ts +13 -0
  32. package/dist/react-native/src/react-native/adapters/mmkv.js +139 -0
  33. package/dist/react-native/src/react-native/adapters/secure-storage.d.ts +18 -0
  34. package/dist/react-native/src/react-native/adapters/secure-storage.js +47 -0
  35. package/dist/react-native/src/react-native/entry-preview-pagination.d.ts +7 -0
  36. package/dist/react-native/src/react-native/entry-preview-pagination.js +194 -0
  37. package/dist/react-native/src/react-native/export-snapshot.d.ts +5 -0
  38. package/dist/react-native/src/react-native/export-snapshot.js +66 -0
  39. package/dist/react-native/src/react-native/full-entry-request.d.ts +5 -0
  40. package/dist/react-native/src/react-native/full-entry-request.js +68 -0
  41. package/dist/react-native/src/react-native/import.d.ts +7 -0
  42. package/dist/react-native/src/react-native/import.js +180 -0
  43. package/dist/react-native/src/react-native/storage-discovery.d.ts +5 -0
  44. package/dist/react-native/src/react-native/storage-discovery.js +65 -0
  45. package/dist/react-native/src/react-native/storage-view.d.ts +19 -0
  46. package/dist/react-native/src/react-native/storage-view.js +123 -0
  47. package/dist/react-native/src/react-native/useRozeniteStoragePlugin.d.ts +6 -0
  48. package/dist/react-native/src/react-native/useRozeniteStoragePlugin.js +141 -0
  49. package/dist/react-native/src/react-native/useStorageAgentTools.d.ts +37 -0
  50. package/dist/react-native/src/react-native/useStorageAgentTools.js +223 -0
  51. package/dist/react-native/src/shared/agent-tools.d.ts +76 -0
  52. package/dist/react-native/src/shared/agent-tools.js +116 -0
  53. package/dist/react-native/src/shared/entry-preview.d.ts +4 -0
  54. package/dist/react-native/src/shared/entry-preview.js +44 -0
  55. package/dist/react-native/src/shared/messaging.d.ts +134 -0
  56. package/dist/react-native/src/shared/messaging.js +1 -0
  57. package/dist/react-native/src/shared/snapshot.d.ts +53 -0
  58. package/dist/react-native/src/shared/snapshot.js +179 -0
  59. package/dist/react-native/src/shared/types.d.ts +78 -0
  60. package/dist/react-native/src/shared/types.js +8 -0
  61. package/dist/rozenite.json +1 -1
  62. package/dist/sdk/package.json +3 -0
  63. package/dist/sdk/sdk.d.ts +44 -0
  64. package/dist/sdk/sdk.js +9 -0
  65. package/dist/sdk/src/shared/agent-tools.d.ts +76 -0
  66. package/dist/sdk/src/shared/agent-tools.js +119 -0
  67. package/dist/sdk/src/shared/types.d.ts +78 -0
  68. package/dist/sdk/src/shared/types.js +13 -0
  69. package/package.json +16 -16
  70. package/react-native.ts +8 -1
  71. package/rozenite.config.ts +1 -0
  72. package/src/__tests__/release-bundle.test.ts +32 -0
  73. package/src/ui/__tests__/panel.test.tsx +14 -0
  74. package/src/ui/add-entry-dialog.tsx +63 -73
  75. package/src/ui/binary-value-editor.tsx +1 -1
  76. package/src/ui/edit-entry-dialog.tsx +59 -70
  77. package/src/ui/entry-detail-dialog.tsx +4 -2
  78. package/src/ui/format-value.tsx +1 -1
  79. package/src/ui/import-dialog.tsx +5 -5
  80. package/src/ui/panel.tsx +70 -88
  81. package/tsconfig.json +4 -7
  82. package/dist/devtools/assets/panel-BlDRXgVW.js +0 -32
  83. package/dist/devtools/assets/panel-DBweZnW5.css +0 -1
  84. package/dist/react-native/chunks/async-storage.require.cjs +0 -1
  85. package/dist/react-native/chunks/async-storage.require.js +0 -53
  86. package/dist/react-native/chunks/index.require.cjs +0 -1
  87. package/dist/react-native/chunks/index.require.js +0 -103
  88. package/dist/react-native/chunks/secure-storage.require.cjs +0 -1
  89. package/dist/react-native/chunks/secure-storage.require.js +0 -46
  90. package/dist/react-native/chunks/types.cjs +0 -1
  91. package/dist/react-native/chunks/types.js +0 -11
  92. package/dist/react-native/chunks/useRozeniteStoragePlugin.require.cjs +0 -1
  93. package/dist/react-native/chunks/useRozeniteStoragePlugin.require.js +0 -1037
  94. package/dist/react-native/index.cjs +0 -1
  95. package/dist/react-native/index.d.ts +0 -365
  96. package/dist/react-native/index.js +0 -28
  97. package/dist/sdk/index.cjs +0 -1
  98. package/dist/sdk/index.d.ts +0 -206
  99. package/dist/sdk/index.js +0 -122
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});exports.createAsyncStorageAdapter=void 0;exports.createExpoAsyncStorageAdapter=void 0;exports.createExpoSecureStorageAdapter=void 0;exports.createMMKVStorageAdapter=void 0;exports.useRozeniteStoragePlugin=void 0;const o=typeof window<"u"&&window.navigator.product!=="ReactNative",c=process.env.NODE_ENV!=="production",d=typeof window>"u",r=(e,t,a)=>({id:e?.adapterId??t,name:e?.adapterName??a,storages:[]});if(!c||d)exports.createAsyncStorageAdapter=(e=>r(e,"async-storage","AsyncStorage")),exports.createExpoAsyncStorageAdapter=exports.createAsyncStorageAdapter,exports.createExpoSecureStorageAdapter=(e=>r(e,"expo-secure-store","Expo SecureStore")),exports.createMMKVStorageAdapter=(e=>r(e,"mmkv","MMKV")),exports.useRozeniteStoragePlugin=()=>null;else if(o){const e=require("./chunks/async-storage.require.cjs"),t=require("./chunks/secure-storage.require.cjs");exports.createAsyncStorageAdapter=e.createAsyncStorageAdapter,exports.createExpoAsyncStorageAdapter=e.createExpoAsyncStorageAdapter,exports.createExpoSecureStorageAdapter=t.createExpoSecureStorageAdapter,exports.createMMKVStorageAdapter=(a=>r(a,"mmkv","MMKV")),exports.useRozeniteStoragePlugin=require("./chunks/useRozeniteStoragePlugin.require.cjs").useRozeniteStoragePlugin}else exports.createAsyncStorageAdapter=require("./chunks/index.require.cjs").createAsyncStorageAdapter,exports.createExpoAsyncStorageAdapter=require("./chunks/index.require.cjs").createExpoAsyncStorageAdapter,exports.createExpoSecureStorageAdapter=require("./chunks/index.require.cjs").createExpoSecureStorageAdapter,exports.createMMKVStorageAdapter=require("./chunks/index.require.cjs").createMMKVStorageAdapter,exports.useRozeniteStoragePlugin=require("./chunks/useRozeniteStoragePlugin.require.cjs").useRozeniteStoragePlugin;
@@ -1,365 +0,0 @@
1
- import { MMKV as MMKV_2 } from 'react-native-mmkv-v3';
2
- import { MMKV as MMKV_3 } from 'react-native-mmkv-v4';
3
- import { RozeniteDevToolsRequestClient } from '@rozenite/plugin-bridge';
4
-
5
- export declare type AsyncStorage = {
6
- kind: 'async';
7
- getAllKeys: () => Promise<readonly string[]>;
8
- get: (key: string) => Promise<StorageEntry | undefined>;
9
- set: (entry: StorageEntry) => Promise<void>;
10
- delete: (key: string) => Promise<void>;
11
- clear: () => Promise<void>;
12
- subscribe?: (callback: (key: string) => void) => StorageSubscription;
13
- };
14
-
15
- export declare type AsyncStorageInstanceConfig = {
16
- storage: AsyncStorageLike;
17
- name?: string;
18
- blacklist?: RegExp;
19
- };
20
-
21
- export declare type AsyncStorageLike = {
22
- getAllKeys: () => Promise<readonly string[]>;
23
- getItem: (key: string) => Promise<string | null>;
24
- setItem: (key: string, value: string) => Promise<void>;
25
- removeItem: (key: string) => Promise<void>;
26
- clear: () => Promise<void>;
27
- };
28
-
29
- export declare let createAsyncStorageAdapter: typeof createAsyncStorageAdapter_2;
30
-
31
- declare const createAsyncStorageAdapter_2: (options: CreateAsyncStorageAdapterOptions) => StorageAdapter;
32
-
33
- export declare type CreateAsyncStorageAdapterOptions = SingleStorageOptions | MultiStorageOptions;
34
-
35
- export declare let createExpoAsyncStorageAdapter: typeof createExpoAsyncStorageAdapter_2;
36
-
37
- /**
38
- * @deprecated Use createAsyncStorageAdapter instead.
39
- */
40
- declare const createExpoAsyncStorageAdapter_2: (options: CreateAsyncStorageAdapterOptions) => StorageAdapter;
41
-
42
- export declare type CreateExpoAsyncStorageAdapterOptions = CreateAsyncStorageAdapterOptions;
43
-
44
- export declare let createExpoSecureStorageAdapter: typeof createExpoSecureStorageAdapter_2;
45
-
46
- declare const createExpoSecureStorageAdapter_2: ({ storage, keys, adapterId, adapterName, storageId, storageName, blacklist, }: CreateExpoSecureStorageAdapterOptions) => StorageAdapter;
47
-
48
- export declare type CreateExpoSecureStorageAdapterOptions = {
49
- storage: SecureStorageLike;
50
- keys: KeySource;
51
- adapterId?: string;
52
- adapterName?: string;
53
- storageId?: string;
54
- storageName?: string;
55
- blacklist?: RegExp;
56
- };
57
-
58
- export declare let createMMKVStorageAdapter: typeof createMMKVStorageAdapter_2;
59
-
60
- declare const createMMKVStorageAdapter_2: ({ adapterId, adapterName, storages, blacklist, }: CreateMMKVStorageAdapterOptions) => StorageAdapter;
61
-
62
- export declare type CreateMMKVStorageAdapterOptions = {
63
- adapterId?: string;
64
- adapterName?: string;
65
- storages: MMKV[] | Record<string, MMKV>;
66
- blacklist?: MMKVBlacklistConfig;
67
- };
68
-
69
- declare type ImportPreview = {
70
- newKeys: string[];
71
- overwriteKeys: string[];
72
- skippedKeys: {
73
- key: string;
74
- reason: 'blacklist';
75
- }[];
76
- unsupportedTypes: {
77
- key: string;
78
- type: StorageEntryType;
79
- }[];
80
- acceptedEntryIndexes: number[];
81
- metadataMismatch: boolean;
82
- };
83
-
84
- declare type KeySource = string[] | (() => Promise<string[]>);
85
-
86
- declare type MMKV = MMKV_2 | MMKV_3;
87
-
88
- declare type MMKVBlacklistConfig = RegExp | Record<string, RegExp | undefined>;
89
-
90
- declare type MultiStorageOptions = {
91
- storages: Record<string, AsyncStorageLike | AsyncStorageInstanceConfig>;
92
- adapterId?: string;
93
- adapterName?: string;
94
- };
95
-
96
- declare type RozeniteStoragePluginOptions = {
97
- storages: StorageAdapter[];
98
- };
99
-
100
- export declare type SecureStorageLike = {
101
- getItemAsync: (key: string) => Promise<string | null>;
102
- setItemAsync: (key: string, value: string) => Promise<void>;
103
- deleteItemAsync: (key: string) => Promise<void>;
104
- };
105
-
106
- declare type SingleStorageOptions = {
107
- storage: AsyncStorageLike;
108
- adapterId?: string;
109
- adapterName?: string;
110
- storageId?: string;
111
- storageName?: string;
112
- blacklist?: RegExp;
113
- };
114
-
115
- export declare type StorageAdapter = {
116
- id: string;
117
- name: string;
118
- storages: StorageNode[];
119
- };
120
-
121
- export declare type StorageCapabilities = {
122
- supportedTypes: StorageEntryType[];
123
- };
124
-
125
- declare type StorageDeleteEntryEvent = {
126
- type: 'delete-entry';
127
- target: StorageTarget;
128
- key: string;
129
- };
130
-
131
- declare type StorageDescriptor = {
132
- target: StorageTarget;
133
- adapterName: string;
134
- storageName: string;
135
- entryCount: number;
136
- capabilities: StorageCapabilities;
137
- supportsSubscriptions: boolean;
138
- };
139
-
140
- /**
141
- * Announced by the device once it is listening for panel requests. The panel is
142
- * recreated on every app reload and asks for storages immediately, which can
143
- * land before the app's React tree has mounted the plugin; this lets the panel
144
- * ask again instead of waiting forever on a dropped request.
145
- */
146
- declare type StorageDeviceReadyEvent = {
147
- type: 'device-ready';
148
- };
149
-
150
- declare type StorageDiscoverStoragesRequestEvent = {
151
- type: 'discover-storages';
152
- requestId: string;
153
- };
154
-
155
- declare type StorageDiscoverStoragesResponseEvent = {
156
- type: 'storage-descriptors';
157
- requestId: string;
158
- storages: StorageDescriptor[];
159
- };
160
-
161
- export declare type StorageEntry = {
162
- key: string;
163
- type: 'string';
164
- value: string;
165
- } | {
166
- key: string;
167
- type: 'number';
168
- value: number;
169
- } | {
170
- key: string;
171
- type: 'boolean';
172
- value: boolean;
173
- } | {
174
- key: string;
175
- type: 'buffer';
176
- value: number[];
177
- };
178
-
179
- declare type StorageEntryPreview = {
180
- key: string;
181
- type: StorageEntryType;
182
- preview: string;
183
- valueSize: number;
184
- isTruncated: boolean;
185
- };
186
-
187
- export declare type StorageEntryType = StorageEntry['type'];
188
-
189
- export declare type StorageEntryValue = StorageEntry['value'];
190
-
191
- declare type StorageEvent_2 = StorageSetEntryEvent | StorageDeleteEntryEvent | StoragePurgeEvent | StorageInvalidatedEvent | StorageDeviceReadyEvent | StorageDiscoverStoragesRequestEvent | StorageDiscoverStoragesResponseEvent | StorageListEntryPreviewsRequestEvent | StorageListEntryPreviewsResponseEvent | StorageGetEntryRequestEvent | StorageGetEntryResponseEvent | StorageExportSnapshotRequestEvent | StorageExportSnapshotResponseEvent | StorageImportPreviewRequestEvent | StorageImportPreviewResponseEvent | StorageRequestErrorEvent | StorageImportEntriesEvent | StorageImportProgressEvent | StorageImportResultEvent;
192
-
193
- declare type StorageEventMap = {
194
- [K in StorageEvent_2['type']]: Extract<StorageEvent_2, {
195
- type: K;
196
- }>;
197
- };
198
-
199
- declare type StorageExportSnapshotRequestEvent = {
200
- type: 'export-snapshot';
201
- requestId: string;
202
- target: StorageTarget;
203
- };
204
-
205
- declare type StorageExportSnapshotResponseEvent = {
206
- type: 'export-snapshot-result';
207
- requestId: string;
208
- target: StorageTarget;
209
- snapshot: StorageSnapshotV1;
210
- };
211
-
212
- declare type StorageGetEntryRequestEvent = {
213
- type: 'get-entry';
214
- requestId: string;
215
- target: StorageTarget;
216
- key: string;
217
- };
218
-
219
- declare type StorageGetEntryResponseEvent = {
220
- type: 'entry';
221
- requestId: string;
222
- target: StorageTarget;
223
- entry: StorageEntry;
224
- };
225
-
226
- declare type StorageImportEntriesEvent = {
227
- type: 'import-entries';
228
- requestId: string;
229
- target: StorageTarget;
230
- entries: StorageEntry[];
231
- };
232
-
233
- declare type StorageImportPreviewRequestEvent = {
234
- type: 'preview-import';
235
- requestId: string;
236
- target: StorageTarget;
237
- snapshot: StorageSnapshotV1;
238
- };
239
-
240
- declare type StorageImportPreviewResponseEvent = {
241
- type: 'import-preview';
242
- requestId: string;
243
- target: StorageTarget;
244
- preview: ImportPreview;
245
- };
246
-
247
- declare type StorageImportProgressEvent = {
248
- type: 'import-progress';
249
- requestId: string;
250
- target: StorageTarget;
251
- written: number;
252
- total: number;
253
- };
254
-
255
- declare type StorageImportResultEvent = {
256
- type: 'import-result';
257
- requestId: string;
258
- target: StorageTarget;
259
- ok: boolean;
260
- written: number;
261
- total: number;
262
- failedKey?: string;
263
- error?: string;
264
- };
265
-
266
- declare type StorageInvalidatedEvent = {
267
- type: 'storage-invalidated';
268
- target: StorageTarget;
269
- /** Native subscriptions only expose a key, not the operation. */
270
- key?: string;
271
- operation?: StorageInvalidationOperation;
272
- /** Updated entry count for the storage after the invalidation. */
273
- entryCount: number;
274
- };
275
-
276
- declare type StorageInvalidationOperation = 'set' | 'delete' | 'import' | 'purge';
277
-
278
- declare type StorageListEntryPreviewsRequestEvent = {
279
- type: 'list-entry-previews';
280
- requestId: string;
281
- target: StorageTarget;
282
- search?: string;
283
- keySortDirection?: 'ascending' | 'descending';
284
- cursor?: string;
285
- limit: number;
286
- };
287
-
288
- declare type StorageListEntryPreviewsResponseEvent = {
289
- type: 'entry-previews';
290
- requestId: string;
291
- target: StorageTarget;
292
- items: StorageEntryPreview[];
293
- nextCursor?: string;
294
- previousCursor?: string;
295
- };
296
-
297
- export declare type StorageNode = {
298
- id: string;
299
- name: string;
300
- storage: SyncStorage | AsyncStorage;
301
- capabilities: StorageCapabilities;
302
- blacklist?: RegExp;
303
- shouldFilterKey?: (key: string) => boolean;
304
- };
305
-
306
- declare type StoragePurgeEvent = {
307
- type: 'purge-storage';
308
- target: StorageTarget;
309
- };
310
-
311
- declare type StorageRequestError = {
312
- requestId: string;
313
- code: 'TARGET_NOT_FOUND' | 'ENTRY_NOT_FOUND' | 'INVALID_CURSOR' | 'INVALID_REQUEST' | 'READ_FAILED' | 'WRITE_FAILED';
314
- message: string;
315
- resetPagination?: boolean;
316
- };
317
-
318
- declare type StorageRequestErrorEvent = StorageRequestError & {
319
- type: 'storage-request-error';
320
- };
321
-
322
- declare type StorageSetEntryEvent = {
323
- type: 'set-entry';
324
- target: StorageTarget;
325
- entry: StorageEntry;
326
- };
327
-
328
- declare type StorageSnapshotV1 = {
329
- version: 1;
330
- plugin: string;
331
- createdAt: string;
332
- storage: {
333
- adapterId: string;
334
- storageId: string;
335
- adapterName: string;
336
- storageName: string;
337
- capabilities: StorageCapabilities;
338
- };
339
- entries: StorageEntry[];
340
- };
341
-
342
- declare type StorageSubscription = {
343
- remove: () => void;
344
- };
345
-
346
- declare type StorageTarget = {
347
- adapterId: string;
348
- storageId: string;
349
- };
350
-
351
- export declare type SyncStorage = {
352
- kind: 'sync';
353
- getAllKeys: () => string[];
354
- get: (key: string) => StorageEntry | undefined;
355
- set: (entry: StorageEntry) => void;
356
- delete: (key: string) => void;
357
- clear: () => void;
358
- subscribe?: (callback: (key: string) => void) => StorageSubscription;
359
- };
360
-
361
- export declare let useRozeniteStoragePlugin: typeof useRozeniteStoragePlugin_2;
362
-
363
- declare const useRozeniteStoragePlugin_2: ({ storages }: RozeniteStoragePluginOptions) => RozeniteDevToolsRequestClient<StorageEventMap> | null;
364
-
365
- export { }
@@ -1,28 +0,0 @@
1
- let r, c, n, s, p;
2
- const d = typeof window < "u" && window.navigator.product !== "ReactNative", i = process.env.NODE_ENV !== "production", u = typeof window > "u", t = (e, a, o) => ({
3
- id: e?.adapterId ?? a,
4
- name: e?.adapterName ?? o,
5
- storages: []
6
- });
7
- if (!i || u)
8
- r = ((e) => t(
9
- e,
10
- "async-storage",
11
- "AsyncStorage"
12
- )), c = r, n = ((e) => t(
13
- e,
14
- "expo-secure-store",
15
- "Expo SecureStore"
16
- )), s = ((e) => t(e, "mmkv", "MMKV")), p = () => null;
17
- else if (d) {
18
- const e = require("./chunks/async-storage.require.js"), a = require("./chunks/secure-storage.require.js");
19
- r = e.createAsyncStorageAdapter, c = e.createExpoAsyncStorageAdapter, n = a.createExpoSecureStorageAdapter, s = ((o) => t(o, "mmkv", "MMKV")), p = require("./chunks/useRozeniteStoragePlugin.require.js").useRozeniteStoragePlugin;
20
- } else
21
- r = require("./chunks/index.require.js").createAsyncStorageAdapter, c = require("./chunks/index.require.js").createExpoAsyncStorageAdapter, n = require("./chunks/index.require.js").createExpoSecureStorageAdapter, s = require("./chunks/index.require.js").createMMKVStorageAdapter, p = require("./chunks/useRozeniteStoragePlugin.require.js").useRozeniteStoragePlugin;
22
- export {
23
- r as createAsyncStorageAdapter,
24
- c as createExpoAsyncStorageAdapter,
25
- n as createExpoSecureStorageAdapter,
26
- s as createMMKVStorageAdapter,
27
- p as useRozeniteStoragePlugin
28
- };
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("@rozenite/agent-shared"),t={adapterId:{type:"string",description:"Storage adapter ID. Required when multiple adapters are configured."},storageId:{type:"string",description:"Storage node ID within the adapter. Required when multiple storages are configured."}},n="@rozenite/storage-plugin",r=["string","number","boolean","buffer"],i={listStorages:e.defineAgentToolContract({name:"list-storages",description:"List all storage adapters and their storage nodes currently available on the device, including supported entry types. Entry counts are omitted to avoid enumerating every storage.",inputSchema:{type:"object",properties:{}}}),listEntries:e.definePaginatedAgentToolContract({name:"list-entries",description:"List keys in a storage. This call intentionally does not return entry values to keep responses token-efficient.",inputSchema:{type:"object",properties:{...t,limit:{type:"number",description:"Pagination size. Defaults to 20 and is capped at 100."},cursor:{type:"string",description:"Opaque pagination cursor from a previous list-entries call."},offset:{type:"number",description:"Deprecated initial pagination offset. Must be a non-negative integer and cannot be combined with cursor."}}},pagination:{kind:"cursor",fields:["key"],defaultFields:["key"]}}),readEntry:e.defineAgentToolContract({name:"read-entry",description:"Read a single storage entry value by key.",inputSchema:{type:"object",properties:{...t,key:{type:"string",description:"Entry key."}},required:["key"]}}),createEntry:e.defineAgentToolContract({name:"create-entry",description:"Create a new storage entry. Fails if the key already exists.",inputSchema:{type:"object",properties:{...t,key:{type:"string",description:"Entry key."},type:{type:"string",enum:[...r],description:"Entry value type. Must be one of the supported types for the target storage (see list-storages)."},value:{description:"Entry value matching the provided type."}},required:["key","type","value"]}}),editEntry:e.defineAgentToolContract({name:"edit-entry",description:"Edit an existing storage entry. Fails if the key does not exist.",inputSchema:{type:"object",properties:{...t,key:{type:"string",description:"Entry key."},type:{type:"string",enum:[...r],description:"Entry value type. Must be one of the supported types for the target storage (see list-storages)."},value:{description:"Entry value matching the provided type."}},required:["key","type","value"]}}),removeEntry:e.defineAgentToolContract({name:"remove-entry",description:"Remove a storage entry by key.",inputSchema:{type:"object",properties:{...t,key:{type:"string",description:"Entry key."}},required:["key"]}})},o=e.defineAgentToolDescriptors(n,i);exports.STORAGE_AGENT_ENTRY_TYPES=r;exports.STORAGE_AGENT_PLUGIN_ID=n;exports.storageToolDefinitions=i;exports.storageTools=o;
@@ -1,206 +0,0 @@
1
- import { AgentToolContract } from '@rozenite/agent-shared';
2
- import { AgentToolDescriptor } from '@rozenite/agent-shared';
3
-
4
- declare type AsyncStorage = {
5
- kind: 'async';
6
- getAllKeys: () => Promise<readonly string[]>;
7
- get: (key: string) => Promise<StorageEntry | undefined>;
8
- set: (entry: StorageEntry) => Promise<void>;
9
- delete: (key: string) => Promise<void>;
10
- clear: () => Promise<void>;
11
- subscribe?: (callback: (key: string) => void) => StorageSubscription;
12
- };
13
-
14
- export declare const STORAGE_AGENT_ENTRY_TYPES: readonly ["string", "number", "boolean", "buffer"];
15
-
16
- export declare const STORAGE_AGENT_PLUGIN_ID = "@rozenite/storage-plugin";
17
-
18
- export declare type StorageAdapter = {
19
- id: string;
20
- name: string;
21
- storages: StorageNode[];
22
- };
23
-
24
- export declare type StorageCapabilities = {
25
- supportedTypes: StorageEntryType[];
26
- };
27
-
28
- export declare type StorageCreateEntryArgs = StorageWriteEntryArgs;
29
-
30
- export declare type StorageCreateEntryResult = {
31
- adapterId: string;
32
- storageId: string;
33
- created: true;
34
- key: string;
35
- };
36
-
37
- export declare type StorageEditEntryArgs = StorageWriteEntryArgs;
38
-
39
- export declare type StorageEditEntryResult = {
40
- adapterId: string;
41
- storageId: string;
42
- edited: true;
43
- key: string;
44
- };
45
-
46
- export declare type StorageEntry = {
47
- key: string;
48
- type: 'string';
49
- value: string;
50
- } | {
51
- key: string;
52
- type: 'number';
53
- value: number;
54
- } | {
55
- key: string;
56
- type: 'boolean';
57
- value: boolean;
58
- } | {
59
- key: string;
60
- type: 'buffer';
61
- value: number[];
62
- };
63
-
64
- export declare type StorageEntryType = StorageEntry['type'];
65
-
66
- export declare type StorageEntryValue = StorageEntry['value'];
67
-
68
- export declare type StorageListEntriesArgs = StorageSelection & {
69
- limit?: number;
70
- cursor?: string;
71
- /** @deprecated Use the opaque cursor returned by a previous page. */
72
- offset?: number;
73
- };
74
-
75
- export declare type StorageListEntriesResult = {
76
- adapterId: string;
77
- storageId: string;
78
- total: number;
79
- items: Array<{
80
- key: string;
81
- }>;
82
- page: {
83
- limit: number;
84
- hasMore: boolean;
85
- nextCursor?: string;
86
- };
87
- };
88
-
89
- export declare type StorageListStoragesArgs = undefined;
90
-
91
- export declare type StorageListStoragesItem = {
92
- adapterId: string;
93
- storageId: string;
94
- adapterName: string;
95
- storageName: string;
96
- supportedTypes: StorageEntryType[];
97
- };
98
-
99
- export declare type StorageListStoragesResult = {
100
- storages: StorageListStoragesItem[];
101
- };
102
-
103
- export declare type StorageNode = {
104
- id: string;
105
- name: string;
106
- storage: SyncStorage | AsyncStorage;
107
- capabilities: StorageCapabilities;
108
- blacklist?: RegExp;
109
- shouldFilterKey?: (key: string) => boolean;
110
- };
111
-
112
- export declare type StorageReadEntryArgs = StorageSelection & {
113
- key: string;
114
- };
115
-
116
- export declare type StorageReadEntryResult = {
117
- adapterId: string;
118
- storageId: string;
119
- entry: StorageEntry;
120
- };
121
-
122
- export declare type StorageRemoveEntryArgs = StorageSelection & {
123
- key: string;
124
- };
125
-
126
- export declare type StorageRemoveEntryResult = {
127
- adapterId: string;
128
- storageId: string;
129
- removed: boolean;
130
- key: string;
131
- };
132
-
133
- declare type StorageSelection = Partial<StorageTarget>;
134
-
135
- declare type StorageSubscription = {
136
- remove: () => void;
137
- };
138
-
139
- export declare type StorageTarget = {
140
- adapterId: string;
141
- storageId: string;
142
- };
143
-
144
- export declare const storageToolDefinitions: {
145
- readonly listStorages: AgentToolContract<undefined, StorageListStoragesResult>;
146
- readonly listEntries: AgentToolContract<StorageListEntriesArgs, StorageListEntriesResult>;
147
- readonly readEntry: AgentToolContract<StorageReadEntryArgs, StorageReadEntryResult>;
148
- readonly createEntry: AgentToolContract<StorageWriteEntryArgs, StorageCreateEntryResult>;
149
- readonly editEntry: AgentToolContract<StorageWriteEntryArgs, StorageEditEntryResult>;
150
- readonly removeEntry: AgentToolContract<StorageRemoveEntryArgs, StorageRemoveEntryResult>;
151
- };
152
-
153
- export declare const storageTools: {
154
- readonly listStorages: AgentToolDescriptor<undefined, StorageListStoragesResult>;
155
- readonly listEntries: AgentToolDescriptor<StorageListEntriesArgs, StorageListEntriesResult>;
156
- readonly readEntry: AgentToolDescriptor<StorageReadEntryArgs, StorageReadEntryResult>;
157
- readonly createEntry: AgentToolDescriptor<(Partial<StorageTarget> & {
158
- key: string;
159
- type: "string";
160
- value: string;
161
- }) | (Partial<StorageTarget> & {
162
- key: string;
163
- type: "number";
164
- value: number;
165
- }) | (Partial<StorageTarget> & {
166
- key: string;
167
- type: "boolean";
168
- value: boolean;
169
- }) | (Partial<StorageTarget> & {
170
- key: string;
171
- type: "buffer";
172
- value: number[];
173
- }), StorageCreateEntryResult>;
174
- readonly editEntry: AgentToolDescriptor<(Partial<StorageTarget> & {
175
- key: string;
176
- type: "string";
177
- value: string;
178
- }) | (Partial<StorageTarget> & {
179
- key: string;
180
- type: "number";
181
- value: number;
182
- }) | (Partial<StorageTarget> & {
183
- key: string;
184
- type: "boolean";
185
- value: boolean;
186
- }) | (Partial<StorageTarget> & {
187
- key: string;
188
- type: "buffer";
189
- value: number[];
190
- }), StorageEditEntryResult>;
191
- readonly removeEntry: AgentToolDescriptor<StorageRemoveEntryArgs, StorageRemoveEntryResult>;
192
- };
193
-
194
- export declare type StorageWriteEntryArgs = StorageSelection & StorageEntry;
195
-
196
- declare type SyncStorage = {
197
- kind: 'sync';
198
- getAllKeys: () => string[];
199
- get: (key: string) => StorageEntry | undefined;
200
- set: (entry: StorageEntry) => void;
201
- delete: (key: string) => void;
202
- clear: () => void;
203
- subscribe?: (callback: (key: string) => void) => StorageSubscription;
204
- };
205
-
206
- export { }