diff --git a/packages/ensjs/src/functions/getWrapperData.test.ts b/packages/ensjs/src/functions/getWrapperData.test.ts index 119bf576..39f2e14c 100644 --- a/packages/ensjs/src/functions/getWrapperData.test.ts +++ b/packages/ensjs/src/functions/getWrapperData.test.ts @@ -52,6 +52,7 @@ describe('getWrapperData', () => { expect(result.child.CANNOT_UNWRAP).toBe(true) expect(result.child.CANNOT_CREATE_SUBDOMAIN).toBe(true) expect(result.child.CANNOT_SET_TTL).toBe(true) + expect(result.parent.IS_DOT_ETH).toBe(true) } }) it('should return correct expiry', async () => { diff --git a/packages/ensjs/src/utils/fuses.ts b/packages/ensjs/src/utils/fuses.ts index 82350da2..0e727b49 100644 --- a/packages/ensjs/src/utils/fuses.ts +++ b/packages/ensjs/src/utils/fuses.ts @@ -45,6 +45,7 @@ export const userSettableFuseEnum = { export const fullFuseEnum = { ...userSettableFuseEnum, + ...fullParentFuseEnum, CAN_DO_EVERYTHING, } @@ -303,9 +304,8 @@ const decodeNamedFuses = (fuses: number, arr: readonly string[]) => { const fuseObj = Object.fromEntries( arr.map((fuse) => [ fuse, - (fuses & - userSettableFuseEnum[fuse as keyof typeof userSettableFuseEnum]) > - 0, + (fuses & fullFuseEnum[fuse as keyof typeof fullFuseEnum]) === + fullFuseEnum[fuse as keyof typeof fullFuseEnum], ]), ) @@ -314,7 +314,7 @@ const decodeNamedFuses = (fuses: number, arr: readonly string[]) => { const decodeUnnamedFuses = (fuses: number, arr: readonly number[]) => { const fuseObj = Object.fromEntries( - arr.map((fuse) => [fuse, (fuses & fuse) > 0]), + arr.map((fuse) => [fuse, (fuses & fuse) === fuse]), ) return fuseObj