Skip to content

Feature/lit 4373 js sdk naga revamp fix import paths issues for builds #822

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 25 additions & 21 deletions README.md

Large diffs are not rendered by default.

2,002 changes: 1,625 additions & 377 deletions local-tests/setup/networkContext.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
* ```
*/

import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { DatilContext } from '../../../../../types';
import { PkpIdentifierRaw } from '../../rawContractApis/permissions/utils/resolvePkpTokenId';

// Import all handler functions
Expand All @@ -46,7 +46,7 @@ import { isPermittedAddressByIdentifier } from './handlers/isPermittedAddressByI
import { removePermittedActionByIdentifier } from './handlers/removePermittedActionByIdentifier';
import { removePermittedAddressByIdentifier } from './handlers/removePermittedAddressByIdentifier';

import { logger } from 'utils/logger';
import { logger } from '@lit-protocol/logger';
import { ScopeString } from '../../../schemas/shared/ScopeSchema';
import { LitTxVoid } from '../../types';
import { AuthMethod } from '../../rawContractApis/permissions/read/getPermittedAuthMethods';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { DatilContext } from '../../../../../../types';
import {
PkpIdentifierRaw,
resolvePkpTokenId,
} from '../../../rawContractApis/permissions/utils/resolvePkpTokenId';
import { addPermittedAction } from '../../../rawContractApis/permissions/write/addPermittedAction';
import { isIpfsCidV0 } from 'services/lit/utils/z-validate';
import { isIpfsCidV0 } from '../../../../../../../shared/utils/z-validate';
import { z } from 'zod';
import { LitTxVoid } from '../../../types';
import { ScopeStringSchema } from '../../../../schemas/shared/ScopeSchema';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { DatilContext } from '../../../../../../types';
import {
PkpIdentifierRaw,
resolvePkpTokenId,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// import { datilDevNetworkContext } from "services/lit/LitNetwork/vDatil/datil-dev/networkContext";
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { logger } from '@lit-protocol/logger';
import { getAddress } from 'viem';
import { z } from 'zod';
import { getPubkeyByTokenId } from '../../../rawContractApis/pkp/read/getPubkeyByTokenId';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { logger } from '@lit-protocol/logger';
import { getPermittedActions } from '../../../rawContractApis/permissions/read/getPermittedActions';
import { getPermittedAddresses } from '../../../rawContractApis/permissions/read/getPermittedAddresses';
import {
Expand Down Expand Up @@ -71,32 +71,32 @@ export async function getPermissionsContext(
}

// Example usage
if (import.meta.main) {
// const networkCtx = datilDevNetworkContext;
// async function example() {
// // Can use any of these identifiers:
// const ctx = await getPermissionsContext(
// {
// tokenId:
// "76136736151863037541847315168980811654782785653773679312890341037699996601290",
// },
// networkCtx
// );
// // Check current permissions
// const isActionAllowed = ctx.isActionPermitted("0x1234..." as `0x${string}`);
// const isAddressAllowed = ctx.isAddressPermitted(
// "0x5678..." as `0x${string}`
// );
// const isAuthMethodAllowed = ctx.isAuthMethodPermitted(
// 1, // AuthMethodType.EthWallet
// "0x1234567890abcdef1234567890abcdef12345678"
// );
// console.log("Action permitted:", isActionAllowed);
// console.log("Address permitted:", isAddressAllowed);
// console.log("Auth method permitted:", isAuthMethodAllowed);
// console.log("All permitted actions:", ctx.actions);
// console.log("All permitted addresses:", ctx.addresses);
// console.log("All permitted auth methods:", ctx.authMethods);
// }
// example().catch(console.error);
}
// if (import.meta.main) {
// // const networkCtx = datilDevNetworkContext;
// // async function example() {
// // // Can use any of these identifiers:
// // const ctx = await getPermissionsContext(
// // {
// // tokenId:
// // "76136736151863037541847315168980811654782785653773679312890341037699996601290",
// // },
// // networkCtx
// // );
// // // Check current permissions
// // const isActionAllowed = ctx.isActionPermitted("0x1234..." as `0x${string}`);
// // const isAddressAllowed = ctx.isAddressPermitted(
// // "0x5678..." as `0x${string}`
// // );
// // const isAuthMethodAllowed = ctx.isAuthMethodPermitted(
// // 1, // AuthMethodType.EthWallet
// // "0x1234567890abcdef1234567890abcdef12345678"
// // );
// // console.log("Action permitted:", isActionAllowed);
// // console.log("Address permitted:", isAddressAllowed);
// // console.log("Auth method permitted:", isAuthMethodAllowed);
// // console.log("All permitted actions:", ctx.actions);
// // console.log("All permitted addresses:", ctx.addresses);
// // console.log("All permitted auth methods:", ctx.authMethods);
// // }
// // example().catch(console.error);
// }
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { logger } from '@lit-protocol/logger';
import { getPermittedActions } from '../../../rawContractApis/permissions/read/getPermittedActions';
import {
PkpIdentifierRaw,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { logger } from '@lit-protocol/logger';
import { getPermittedAddresses } from '../../../rawContractApis/permissions/read/getPermittedAddresses';
import {
PkpIdentifierRaw,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { logger } from '@lit-protocol/logger';
import { getPermittedAuthMethodScopes } from '../../../rawContractApis/permissions/read/getPermittedAuthMethodScopes';
import {
PkpIdentifierRaw,
resolvePkpTokenId,
} from '../../../rawContractApis/permissions/utils/resolvePkpTokenId';
import { datilDevNetworkContext } from 'services/lit/LitNetwork/vDatil/datil-dev/networkContext';
import { datilDevNetworkContext } from '../../../../../../datil-dev/networkContext';

/**
* Get permitted scopes for a specific authentication method of a PKP token using various identifier types
Expand Down Expand Up @@ -41,22 +41,22 @@ export async function getPermittedAuthMethodScopesByIdentifier(
);
}

// Example usage when running as main
if (import.meta.main) {
const networkCtx = datilDevNetworkContext;
// // Example usage when running as main
// if (import.meta.main) {
// const networkCtx = datilDevNetworkContext;

const res = await getPermittedAuthMethodScopesByIdentifier(
{
identifier: {
// tokenId: "76136736151863037541847315168980811654782785653773679312890341037699996601290",
// pubkey: "0x000",
address: '0xef3eE1bD838aF5B36482FAe8a6Fc394C68d5Fa9F',
},
authMethodType: 1,
authMethodId: '0x1234567890abcdef1234567890abcdef12345678',
scopeId: 0,
},
networkCtx
);
console.log('permittedAuthMethodScopes', res);
}
// const res = await getPermittedAuthMethodScopesByIdentifier(
// {
// identifier: {
// // tokenId: "76136736151863037541847315168980811654782785653773679312890341037699996601290",
// // pubkey: "0x000",
// address: '0xef3eE1bD838aF5B36482FAe8a6Fc394C68d5Fa9F',
// },
// authMethodType: 1,
// authMethodId: '0x1234567890abcdef1234567890abcdef12345678',
// scopeId: 0,
// },
// networkCtx
// );
// console.log('permittedAuthMethodScopes', res);
// }
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { logger } from '@lit-protocol/logger';
import {
AuthMethod,
getPermittedAuthMethods,
Expand All @@ -8,7 +8,7 @@ import {
PkpIdentifierRaw,
resolvePkpTokenId,
} from '../../../rawContractApis/permissions/utils/resolvePkpTokenId';
import { datilDevNetworkContext } from 'services/lit/LitNetwork/vDatil/datil-dev/networkContext';
import { datilDevNetworkContext } from '../../../../../../datil-dev/networkContext';

/**
* Get permitted authentication methods for a PKP token using various identifier types
Expand All @@ -29,17 +29,17 @@ export async function getPermittedAuthMethodsByIdentifier(
);
}

// Example usage when running as main
if (import.meta.main) {
const networkCtx = datilDevNetworkContext;
// // Example usage when running as main
// if (import.meta.main) {
// const networkCtx = datilDevNetworkContext;

const res = await getPermittedAuthMethodsByIdentifier(
{
// tokenId: "76136736151863037541847315168980811654782785653773679312890341037699996601290",
// pubkey: "0x000",
address: '0xef3eE1bD838aF5B36482FAe8a6Fc394C68d5Fa9F',
},
networkCtx
);
console.log('permittedAuthMethods', res);
}
// const res = await getPermittedAuthMethodsByIdentifier(
// {
// // tokenId: "76136736151863037541847315168980811654782785653773679312890341037699996601290",
// // pubkey: "0x000",
// address: '0xef3eE1bD838aF5B36482FAe8a6Fc394C68d5Fa9F',
// },
// networkCtx
// );
// console.log('permittedAuthMethods', res);
// }
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// import { datilDevNetworkContext } from "services/lit/LitNetwork/vDatil/datil-dev/networkContext";
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { isIpfsCidV0 } from 'services/lit/utils/z-validate';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { isIpfsCidV0 } from '../../../../../../../shared/utils/z-validate';
import { logger } from '@lit-protocol/logger';
import { z } from 'zod';
import { isPermittedAction } from '../../../rawContractApis/permissions/read/isPermittedAction';
import {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// import { datilDevNetworkContext } from "services/lit/LitNetwork/vDatil/datil-dev/networkContext";
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { logger } from '@lit-protocol/logger';
import { z } from 'zod';
import { isPermittedAddress } from '../../../rawContractApis/permissions/read/isPermittedAddress';
import {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
// import { datilDevNetworkContext } from "services/lit/LitNetwork/vDatil/datil-dev/networkContext";
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { isIpfsCidV0 } from 'services/lit/utils/z-validate';
import { DatilContext } from '../../../../../../types';
import { isIpfsCidV0 } from '../../../../../../../shared/utils/z-validate';
import { z } from 'zod';
import {
PkpIdentifierRaw,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// import { datilDevNetworkContext } from "services/lit/LitNetwork/vDatil/datil-dev/networkContext";
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { DatilContext } from '../../../../../../types';
import {
PkpIdentifierRaw,
resolvePkpTokenId,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { getActiveUnkickedValidatorStructsAndCounts } from 'services/lit/LitNetwork/vDatil/common/LitChainClient/apis/rawContractApis/staking/getActiveUnkickedValidatorStructsAndCounts';
import { GetActiveUnkickedValidatorStructsAndCountsTransformed } from 'services/lit/LitNetwork/vDatil/common/LitChainClient/schemas/GetActiveUnkickedValidatorStructsAndCountsSchema';
import { datilDevNetworkContext } from 'services/lit/LitNetwork/vDatil/datil-dev/networkContext';
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { DatilContext } from '../../../../../types';
import { GetActiveUnkickedValidatorStructsAndCountsTransformed } from '../../../schemas/GetActiveUnkickedValidatorStructsAndCountsSchema';
import { getActiveUnkickedValidatorStructsAndCounts } from '../../rawContractApis/staking/getActiveUnkickedValidatorStructsAndCounts';

/**
* Interface representing the structure of connection information
Expand Down Expand Up @@ -88,12 +87,12 @@ export async function getConnectionInfo({
*
* Usage: bun run src/services/lit/LitNetwork/vDatil/common/LitChainClient/apis/highLevelApis/connection/getConnectionInfo.ts
*/
if (import.meta.main) {
// Use the development network context for testing
const results = await getConnectionInfo({
networkCtx: datilDevNetworkContext,
});
// if (import.meta.main) {
// // Use the development network context for testing
// const results = await getConnectionInfo({
// networkCtx: datilDevNetworkContext,
// });

console.log('Connection Info Results:');
console.log(JSON.stringify(results, null, 2));
}
// console.log('Connection Info Results:');
// console.log(JSON.stringify(results, null, 2));
// }
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,10 @@ describe('mintPKP', () => {
(log) => log.eventName === 'PermittedAuthMethodAdded'
);

expect(permittedAuthMethodScopeAddedEvent?.args.id).toBe(
expect(permittedAuthMethodScopeAddedEvent?.args['id']).toBe(
'0x4cb822e6f51d9723f22b9374c4ef7d41ae2b1a5463738516aeb117ff387ba51a'
);
expect(permittedAuthMethodAddedEvent?.args.id).toBe(
expect(permittedAuthMethodAddedEvent?.args['id']).toBe(
'0x4cb822e6f51d9723f22b9374c4ef7d41ae2b1a5463738516aeb117ff387ba51a'
);
});
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Hex } from 'viem';
import { logger } from '../../../../../../../../../utils/logger';
import { getAuthIdByAuthMethod } from '../../../../../../../LitAuthManager/authUtils';
import { logger } from '@lit-protocol/logger';
import { getAuthIdByAuthMethod } from '@lit-protocol/auth';
import { DatilContext } from '../../../../../types';
import { PKPData } from '../../../schemas/shared/PKPDataSchema';
import { mintNextAndAddAuthMethods } from '../../rawContractApis/pkp/write/mintNextAndAddAuthMethods';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ import { createLitContracts } from './utils/createLitContracts';
import { mintPKP } from './highLevelApis/mintPKP/mintPKP';
import { PKPPermissionsManager } from './highLevelApis/PKPPermissionsManager';

// Define type for utils to avoid TypeScript serialization error
type UtilsType = {
createLitContracts: typeof createLitContracts;
};

// ==================== Exports ====================
// ========== Treeshakable ==========
// Individual exports allow better tree-shaking
Expand Down Expand Up @@ -71,6 +76,6 @@ export const api = {
PKPPermissionsManager,
};

export const utils = {
export const utils: UtilsType = {
createLitContracts,
};
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// import { datilDevNetworkContext } from "services/lit/LitNetwork/vDatil/datil-dev/networkContext";
import { DatilContext } from 'services/lit/LitNetwork/vDatil/types';
import { toBigInt } from 'services/lit/utils/z-transformers';
import { logger } from 'utils/logger';
import { DatilContext } from '../../../../../../types';
import { toBigInt } from '../../../../../../../shared/utils/z-transformers';
import { logger } from '@lit-protocol/logger';
import { z } from 'zod';
import { createLitContracts } from '../../../utils/createLitContracts';

Expand All @@ -10,6 +10,9 @@ const getPermittedActionsSchema = z.object({
});

type GetPermittedActionsRequest = z.input<typeof getPermittedActionsSchema>;
type ValidatedGetPermittedActionsRequest = z.output<
typeof getPermittedActionsSchema
>;

/**
* Get permitted actions for a PKP token
Expand All @@ -21,7 +24,8 @@ export async function getPermittedActions(
request: GetPermittedActionsRequest,
networkCtx: DatilContext
): Promise<readonly `0x${string}`[]> {
const validatedRequest = getPermittedActionsSchema.parse(request);
const validatedRequest: ValidatedGetPermittedActionsRequest =
getPermittedActionsSchema.parse(request);
logger.debug({ validatedRequest });

const { pkpPermissionsContract } = createLitContracts(networkCtx);
Expand Down
Loading