@abraca/dabra 0.3.0 → 0.4.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.
- package/dist/abracadabra-provider.cjs +4 -0
- package/dist/abracadabra-provider.cjs.map +1 -1
- package/dist/abracadabra-provider.esm.js +4 -0
- package/dist/abracadabra-provider.esm.js.map +1 -1
- package/dist/index.d.ts +9 -1
- package/package.json +1 -1
- package/src/AbracadabraClient.ts +10 -0
- package/src/types.ts +7 -0
package/dist/index.d.ts
CHANGED
|
@@ -227,6 +227,8 @@ declare class AbracadabraClient {
|
|
|
227
227
|
createChild(docId: string, opts?: {
|
|
228
228
|
child_id?: string;
|
|
229
229
|
}): Promise<DocumentMeta>;
|
|
230
|
+
/** List all permissions for a document (requires read access). */
|
|
231
|
+
listPermissions(docId: string): Promise<PermissionEntry[]>;
|
|
230
232
|
/** Grant or change a user's role on a document (requires Owner). */
|
|
231
233
|
setPermission(docId: string, opts: {
|
|
232
234
|
user_id: string;
|
|
@@ -648,6 +650,12 @@ interface PublicKeyInfo {
|
|
|
648
650
|
deviceName: string | null;
|
|
649
651
|
revoked: boolean;
|
|
650
652
|
}
|
|
653
|
+
interface PermissionEntry {
|
|
654
|
+
user_id: string;
|
|
655
|
+
role: "owner" | "editor" | "viewer" | "observer";
|
|
656
|
+
username: string;
|
|
657
|
+
display_name: string | null;
|
|
658
|
+
}
|
|
651
659
|
interface HealthStatus {
|
|
652
660
|
status: string;
|
|
653
661
|
version: string;
|
|
@@ -1020,4 +1028,4 @@ declare class CryptoIdentityKeystore {
|
|
|
1020
1028
|
clear(): Promise<void>;
|
|
1021
1029
|
}
|
|
1022
1030
|
//#endregion
|
|
1023
|
-
export { AbracadabraClient, AbracadabraClientConfig, AbracadabraOutgoingMessageArguments, AbracadabraProvider, AbracadabraProviderConfiguration, AuthorizedScope, AwarenessError, CompleteHocuspocusProviderConfiguration, CompleteHocuspocusProviderWebsocketConfiguration, Constructable, ConstructableOutgoingMessage, CryptoIdentity, CryptoIdentityKeystore, DocumentMeta, EffectiveRole, HealthStatus, HocusPocusWebSocket, HocuspocusProvider, HocuspocusProviderConfiguration, HocuspocusProviderWebsocket, HocuspocusProviderWebsocketConfiguration, HocuspocusWebSocket, MessageType, OfflineStore, OutgoingMessageArguments, OutgoingMessageInterface, PendingSubdoc, PublicKeyInfo, StatesArray, SubdocMessage, SubdocRegisteredEvent, UploadInfo, UploadMeta, UserProfile, WebSocketStatus, onAuthenticatedParameters, onAuthenticationFailedParameters, onAwarenessChangeParameters, onAwarenessUpdateParameters, onCloseParameters, onDisconnectParameters, onMessageParameters, onOpenParameters, onOutgoingMessageParameters, onStatelessParameters, onStatusParameters, onSubdocLoadedParameters, onSubdocRegisteredParameters, onSyncedParameters, onUnsyncedChangesParameters };
|
|
1031
|
+
export { AbracadabraClient, AbracadabraClientConfig, AbracadabraOutgoingMessageArguments, AbracadabraProvider, AbracadabraProviderConfiguration, AuthorizedScope, AwarenessError, CompleteHocuspocusProviderConfiguration, CompleteHocuspocusProviderWebsocketConfiguration, Constructable, ConstructableOutgoingMessage, CryptoIdentity, CryptoIdentityKeystore, DocumentMeta, EffectiveRole, HealthStatus, HocusPocusWebSocket, HocuspocusProvider, HocuspocusProviderConfiguration, HocuspocusProviderWebsocket, HocuspocusProviderWebsocketConfiguration, HocuspocusWebSocket, MessageType, OfflineStore, OutgoingMessageArguments, OutgoingMessageInterface, PendingSubdoc, PermissionEntry, PublicKeyInfo, StatesArray, SubdocMessage, SubdocRegisteredEvent, UploadInfo, UploadMeta, UserProfile, WebSocketStatus, onAuthenticatedParameters, onAuthenticationFailedParameters, onAwarenessChangeParameters, onAwarenessUpdateParameters, onCloseParameters, onDisconnectParameters, onMessageParameters, onOpenParameters, onOutgoingMessageParameters, onStatelessParameters, onStatusParameters, onSubdocLoadedParameters, onSubdocRegisteredParameters, onSyncedParameters, onUnsyncedChangesParameters };
|
package/package.json
CHANGED
package/src/AbracadabraClient.ts
CHANGED
|
@@ -4,6 +4,7 @@ import type {
|
|
|
4
4
|
UploadMeta,
|
|
5
5
|
UploadInfo,
|
|
6
6
|
PublicKeyInfo,
|
|
7
|
+
PermissionEntry,
|
|
7
8
|
HealthStatus,
|
|
8
9
|
} from "./types.ts";
|
|
9
10
|
|
|
@@ -219,6 +220,15 @@ export class AbracadabraClient {
|
|
|
219
220
|
|
|
220
221
|
// ── Permissions ──────────────────────────────────────────────────────────
|
|
221
222
|
|
|
223
|
+
/** List all permissions for a document (requires read access). */
|
|
224
|
+
async listPermissions(docId: string): Promise<PermissionEntry[]> {
|
|
225
|
+
const res = await this.request<{ permissions: PermissionEntry[] }>(
|
|
226
|
+
"GET",
|
|
227
|
+
`/docs/${encodeURIComponent(docId)}/permissions`,
|
|
228
|
+
);
|
|
229
|
+
return res.permissions;
|
|
230
|
+
}
|
|
231
|
+
|
|
222
232
|
/** Grant or change a user's role on a document (requires Owner). */
|
|
223
233
|
async setPermission(
|
|
224
234
|
docId: string,
|
package/src/types.ts
CHANGED
|
@@ -181,6 +181,13 @@ export interface PublicKeyInfo {
|
|
|
181
181
|
revoked: boolean;
|
|
182
182
|
}
|
|
183
183
|
|
|
184
|
+
export interface PermissionEntry {
|
|
185
|
+
user_id: string;
|
|
186
|
+
role: "owner" | "editor" | "viewer" | "observer";
|
|
187
|
+
username: string;
|
|
188
|
+
display_name: string | null;
|
|
189
|
+
}
|
|
190
|
+
|
|
184
191
|
export interface HealthStatus {
|
|
185
192
|
status: string;
|
|
186
193
|
version: string;
|