@opendatalabs/vana-sdk 0.1.0-alpha.2dd2718 → 0.1.0-alpha.2e569eb
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/controllers/data.cjs +6 -0
- package/dist/controllers/data.cjs.map +1 -1
- package/dist/controllers/data.d.ts +14 -7
- package/dist/controllers/data.js +6 -0
- package/dist/controllers/data.js.map +1 -1
- package/dist/controllers/permissions.cjs +70 -11
- package/dist/controllers/permissions.cjs.map +1 -1
- package/dist/controllers/permissions.d.ts +18 -0
- package/dist/controllers/permissions.js +70 -11
- package/dist/controllers/permissions.js.map +1 -1
- package/dist/controllers/schemas.cjs +69 -0
- package/dist/controllers/schemas.cjs.map +1 -1
- package/dist/controllers/schemas.d.ts +39 -0
- package/dist/controllers/schemas.js +69 -0
- package/dist/controllers/schemas.js.map +1 -1
- package/dist/controllers/server.cjs +251 -42
- package/dist/controllers/server.cjs.map +1 -1
- package/dist/controllers/server.d.ts +111 -14
- package/dist/controllers/server.js +251 -42
- package/dist/controllers/server.js.map +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.ts +1 -1
- package/dist/core.js.map +1 -1
- package/dist/generated/server/server-exports.cjs +22 -0
- package/dist/generated/server/server-exports.cjs.map +1 -1
- package/dist/generated/server/server-exports.d.ts +27 -10
- package/dist/generated/server/server-exports.js +17 -0
- package/dist/generated/server/server-exports.js.map +1 -1
- package/dist/generated/server/server.cjs.map +1 -1
- package/dist/generated/server/server.d.ts +771 -402
- package/dist/server/relayerHandler.cjs.map +1 -1
- package/dist/server/relayerHandler.d.ts +1 -1
- package/dist/server/relayerHandler.js.map +1 -1
- package/dist/storage/index.cjs +3 -0
- package/dist/storage/index.cjs.map +1 -1
- package/dist/storage/index.d.ts +1 -0
- package/dist/storage/index.js +2 -0
- package/dist/storage/index.js.map +1 -1
- package/dist/storage/providers/dropbox.cjs +237 -0
- package/dist/storage/providers/dropbox.cjs.map +1 -0
- package/dist/storage/providers/dropbox.d.ts +39 -0
- package/dist/storage/providers/dropbox.js +215 -0
- package/dist/storage/providers/dropbox.js.map +1 -0
- package/dist/storage/providers/dropbox.test.d.ts +1 -0
- package/dist/tests/data-upload-owner-validation.test.d.ts +1 -0
- package/dist/types/controller-context.cjs.map +1 -1
- package/dist/types/controller-context.d.ts +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/operations.cjs +3 -15
- package/dist/types/operations.cjs.map +1 -1
- package/dist/types/operations.d.ts +16 -42
- package/dist/types/operations.js +2 -13
- package/dist/types/operations.js.map +1 -1
- package/dist/types/permissions.cjs.map +1 -1
- package/dist/types/permissions.d.ts +2 -0
- package/dist/types/personal.cjs.map +1 -1
- package/dist/types/personal.d.ts +19 -0
- package/dist/utils/__tests__/chainQuery.test.d.ts +1 -0
- package/dist/utils/grantFiles.cjs +4 -1
- package/dist/utils/grantFiles.cjs.map +1 -1
- package/dist/utils/grantFiles.js +4 -1
- package/dist/utils/grantFiles.js.map +1 -1
- package/package.json +1 -1
|
@@ -1057,6 +1057,24 @@ export declare class PermissionsController extends BaseController {
|
|
|
1057
1057
|
* @returns Promise resolving to array of file IDs
|
|
1058
1058
|
*/
|
|
1059
1059
|
getPermissionFileIds(permissionId: bigint): Promise<bigint[]>;
|
|
1060
|
+
/**
|
|
1061
|
+
* Retrieves detailed grant file data from IPFS or HTTP storage.
|
|
1062
|
+
*
|
|
1063
|
+
* @remarks
|
|
1064
|
+
* This method automatically uses the SDK's configured downloadRelayer to bypass CORS restrictions.
|
|
1065
|
+
* Use this instead of importing the standalone `retrieveGrantFile` utility.
|
|
1066
|
+
*
|
|
1067
|
+
* @param grantUrl - The grant file URL (from OnChainPermissionGrant.grantUrl)
|
|
1068
|
+
* @returns Promise resolving to the complete grant file with operation details
|
|
1069
|
+
* @throws {NetworkError} When all retrieval attempts fail
|
|
1070
|
+
* @example
|
|
1071
|
+
* ```typescript
|
|
1072
|
+
* const grants = await vana.permissions.getUserPermissionGrantsOnChain();
|
|
1073
|
+
* const grantFile = await vana.permissions.retrieveGrantFile(grants[0].grantUrl);
|
|
1074
|
+
* console.log(`Operation: ${grantFile.operation}`);
|
|
1075
|
+
* ```
|
|
1076
|
+
*/
|
|
1077
|
+
retrieveGrantFile(grantUrl: string): Promise<GrantFile>;
|
|
1060
1078
|
/**
|
|
1061
1079
|
* Get all permissions for a specific file (alias for getFilePermissionIds)
|
|
1062
1080
|
*
|
|
@@ -2700,19 +2700,53 @@ class PermissionsController extends BaseController {
|
|
|
2700
2700
|
const total = Number(totalCount);
|
|
2701
2701
|
const limit = options.limit ?? 50;
|
|
2702
2702
|
const offset = options.offset ?? 0;
|
|
2703
|
-
const
|
|
2703
|
+
const includePermissions = options.includePermissions ?? true;
|
|
2704
|
+
const startId = total - offset;
|
|
2705
|
+
const endId = Math.max(startId - limit + 1, 1);
|
|
2704
2706
|
const granteeIds = Array.from(
|
|
2705
|
-
{ length:
|
|
2706
|
-
(_, i) =>
|
|
2707
|
-
//
|
|
2708
|
-
);
|
|
2709
|
-
const granteePromises = granteeIds.map(
|
|
2710
|
-
(granteeId) => this.getGranteeById(granteeId)
|
|
2711
|
-
);
|
|
2712
|
-
const granteeResults = await Promise.all(granteePromises);
|
|
2713
|
-
const grantees = granteeResults.filter(
|
|
2714
|
-
(grantee) => grantee !== null
|
|
2707
|
+
{ length: startId - endId + 1 },
|
|
2708
|
+
(_, i) => startId - i
|
|
2709
|
+
// Generate IDs in descending order
|
|
2715
2710
|
);
|
|
2711
|
+
let grantees;
|
|
2712
|
+
if (includePermissions) {
|
|
2713
|
+
const granteePromises = granteeIds.map(
|
|
2714
|
+
(granteeId) => this.getGranteeById(granteeId)
|
|
2715
|
+
);
|
|
2716
|
+
const granteeResults = await Promise.all(granteePromises);
|
|
2717
|
+
grantees = granteeResults.filter(
|
|
2718
|
+
(grantee) => grantee !== null
|
|
2719
|
+
);
|
|
2720
|
+
} else {
|
|
2721
|
+
const granteeInfoPromises = granteeIds.map(
|
|
2722
|
+
async (granteeId) => {
|
|
2723
|
+
try {
|
|
2724
|
+
const granteeInfo = await this.context.publicClient.readContract({
|
|
2725
|
+
address: DataPortabilityGranteesAddress,
|
|
2726
|
+
abi: DataPortabilityGranteesAbi,
|
|
2727
|
+
functionName: "granteesV2",
|
|
2728
|
+
args: [BigInt(granteeId)]
|
|
2729
|
+
});
|
|
2730
|
+
const grantee = {
|
|
2731
|
+
id: granteeId,
|
|
2732
|
+
owner: granteeInfo.owner,
|
|
2733
|
+
address: granteeInfo.granteeAddress,
|
|
2734
|
+
publicKey: granteeInfo.publicKey,
|
|
2735
|
+
permissionIds: []
|
|
2736
|
+
// TypeScript infers number[] from Grantee type
|
|
2737
|
+
};
|
|
2738
|
+
return grantee;
|
|
2739
|
+
} catch (error) {
|
|
2740
|
+
console.warn(`Failed to fetch grantee ${granteeId}:`, error);
|
|
2741
|
+
return null;
|
|
2742
|
+
}
|
|
2743
|
+
}
|
|
2744
|
+
);
|
|
2745
|
+
const granteeInfoResults = await Promise.all(granteeInfoPromises);
|
|
2746
|
+
grantees = granteeInfoResults.filter(
|
|
2747
|
+
(grantee) => grantee !== null
|
|
2748
|
+
);
|
|
2749
|
+
}
|
|
2716
2750
|
return {
|
|
2717
2751
|
grantees,
|
|
2718
2752
|
total,
|
|
@@ -3218,6 +3252,31 @@ class PermissionsController extends BaseController {
|
|
|
3218
3252
|
);
|
|
3219
3253
|
}
|
|
3220
3254
|
}
|
|
3255
|
+
/**
|
|
3256
|
+
* Retrieves detailed grant file data from IPFS or HTTP storage.
|
|
3257
|
+
*
|
|
3258
|
+
* @remarks
|
|
3259
|
+
* This method automatically uses the SDK's configured downloadRelayer to bypass CORS restrictions.
|
|
3260
|
+
* Use this instead of importing the standalone `retrieveGrantFile` utility.
|
|
3261
|
+
*
|
|
3262
|
+
* @param grantUrl - The grant file URL (from OnChainPermissionGrant.grantUrl)
|
|
3263
|
+
* @returns Promise resolving to the complete grant file with operation details
|
|
3264
|
+
* @throws {NetworkError} When all retrieval attempts fail
|
|
3265
|
+
* @example
|
|
3266
|
+
* ```typescript
|
|
3267
|
+
* const grants = await vana.permissions.getUserPermissionGrantsOnChain();
|
|
3268
|
+
* const grantFile = await vana.permissions.retrieveGrantFile(grants[0].grantUrl);
|
|
3269
|
+
* console.log(`Operation: ${grantFile.operation}`);
|
|
3270
|
+
* ```
|
|
3271
|
+
*/
|
|
3272
|
+
async retrieveGrantFile(grantUrl) {
|
|
3273
|
+
const { retrieveGrantFile: retrieveGrantFileUtil } = await import("../utils/grantFiles");
|
|
3274
|
+
return retrieveGrantFileUtil(
|
|
3275
|
+
grantUrl,
|
|
3276
|
+
void 0,
|
|
3277
|
+
this.context.downloadRelayer
|
|
3278
|
+
);
|
|
3279
|
+
}
|
|
3221
3280
|
/**
|
|
3222
3281
|
* Get all permissions for a specific file (alias for getFilePermissionIds)
|
|
3223
3282
|
*
|