@ensdomains/ensjs 3.0.0-alpha.20 → 3.0.0-alpha.22

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 (66) hide show
  1. package/dist/cjs/{functions/renewName.js → contracts/bulkRenewal.js} +6 -14
  2. package/dist/cjs/contracts/getContractAddress.js +2 -1
  3. package/dist/cjs/contracts/index.js +5 -0
  4. package/dist/cjs/functions/deleteSubname.js +40 -8
  5. package/dist/cjs/functions/getPrice.js +55 -8
  6. package/dist/cjs/functions/getSubnames.js +30 -94
  7. package/dist/cjs/functions/renewNames.js +42 -0
  8. package/dist/cjs/generated/BulkRenewal.js +16 -0
  9. package/dist/cjs/generated/factories/BulkRenewal__factory.js +120 -0
  10. package/dist/cjs/generated/factories/index.js +2 -0
  11. package/dist/cjs/generated/index.js +2 -0
  12. package/dist/cjs/index.js +5 -4
  13. package/dist/cjs/utils/registerHelpers.js +2 -1
  14. package/dist/esm/contracts/bulkRenewal.mjs +6 -0
  15. package/dist/esm/contracts/getContractAddress.mjs +2 -1
  16. package/dist/esm/contracts/index.mjs +5 -0
  17. package/dist/esm/functions/deleteSubname.mjs +40 -8
  18. package/dist/esm/functions/getPrice.mjs +56 -9
  19. package/dist/esm/functions/getSubnames.mjs +30 -94
  20. package/dist/esm/functions/renewNames.mjs +23 -0
  21. package/dist/esm/generated/BulkRenewal.mjs +0 -0
  22. package/dist/esm/generated/factories/BulkRenewal__factory.mjs +108 -0
  23. package/dist/esm/generated/factories/index.mjs +2 -0
  24. package/dist/esm/generated/index.mjs +2 -0
  25. package/dist/esm/index.mjs +5 -4
  26. package/dist/esm/utils/registerHelpers.mjs +2 -1
  27. package/dist/types/contracts/bulkRenewal.d.ts +3 -0
  28. package/dist/types/contracts/index.d.ts +1 -0
  29. package/dist/types/contracts/types.d.ts +1 -1
  30. package/dist/types/functions/commitName.d.ts +1 -1
  31. package/dist/types/functions/deleteSubname.d.ts +5 -2
  32. package/dist/types/functions/getPrice.d.ts +2 -2
  33. package/dist/types/functions/getSubnames.d.ts +1 -1
  34. package/dist/types/functions/registerName.d.ts +2 -5
  35. package/dist/types/functions/{renewName.d.ts → renewNames.d.ts} +2 -2
  36. package/dist/types/generated/BulkRenewal.d.ts +76 -0
  37. package/dist/types/generated/factories/BulkRenewal__factory.d.ts +32 -0
  38. package/dist/types/generated/factories/index.d.ts +1 -0
  39. package/dist/types/generated/index.d.ts +2 -0
  40. package/dist/types/index.d.ts +5 -5
  41. package/dist/types/utils/fuses.d.ts +2 -0
  42. package/dist/types/utils/registerHelpers.d.ts +13 -9
  43. package/package.json +1 -1
  44. package/src/contracts/bulkRenewal.ts +6 -0
  45. package/src/contracts/getContractAddress.ts +1 -0
  46. package/src/contracts/index.ts +6 -0
  47. package/src/contracts/types.ts +1 -0
  48. package/src/functions/deleteSubname.ts +51 -11
  49. package/src/functions/getNames.test.ts +10 -1
  50. package/src/functions/getPrice.test.ts +52 -0
  51. package/src/functions/getPrice.ts +61 -9
  52. package/src/functions/getProfile.test.ts +5 -1
  53. package/src/functions/getSubnames.test.ts +669 -29
  54. package/src/functions/getSubnames.ts +39 -98
  55. package/src/functions/registerName.ts +2 -5
  56. package/src/functions/{renewName.test.ts → renewNames.test.ts} +22 -2
  57. package/src/functions/renewNames.ts +30 -0
  58. package/src/generated/BulkRenewal.ts +197 -0
  59. package/src/generated/factories/BulkRenewal__factory.ts +108 -0
  60. package/src/generated/factories/index.ts +1 -0
  61. package/src/generated/index.ts +2 -0
  62. package/src/index.ts +6 -5
  63. package/src/utils/fuses.ts +3 -1
  64. package/src/utils/registerHelpers.ts +18 -9
  65. package/dist/esm/functions/renewName.mjs +0 -14
  66. package/src/functions/renewName.ts +0 -22
@@ -1,4 +1,4 @@
1
- import { utils } from 'ethers'
1
+ import { BigNumberish, utils } from 'ethers'
2
2
  import type { FuseOptions } from '../@types/FuseOptions'
3
3
  import type { PublicResolver } from '../generated'
4
4
  import generateFuseInput from './generateFuseInput'
@@ -6,16 +6,25 @@ import { labelhash } from './labels'
6
6
  import { namehash } from './normalise'
7
7
  import { generateRecordCallArray, RecordOptions } from './recordHelpers'
8
8
 
9
- export type RegistrationParams = {
10
- name: string
9
+ const MAX_INT_64 = 2n ** 64n - 1n
10
+
11
+ export type BaseRegistrationParams = {
11
12
  owner: string
12
13
  duration: number
13
14
  secret: string
14
- resolver: PublicResolver
15
+ resolverAddress?: string
15
16
  records?: RecordOptions
16
17
  reverseRecord?: boolean
17
18
  fuses?: FuseOptions
18
- wrapperExpiry: number
19
+ wrapperExpiry?: BigNumberish
20
+ }
21
+
22
+ export type RegistrationParams = Omit<
23
+ BaseRegistrationParams,
24
+ 'resolverAddress'
25
+ > & {
26
+ name: string
27
+ resolver: PublicResolver
19
28
  }
20
29
 
21
30
  export type CommitmentParams = Omit<
@@ -23,7 +32,7 @@ export type CommitmentParams = Omit<
23
32
  'secret' | 'wrapperExpiry'
24
33
  > & {
25
34
  secret?: string
26
- wrapperExpiry?: number
35
+ wrapperExpiry?: BigNumberish
27
36
  }
28
37
 
29
38
  export type RegistrationTuple = [
@@ -35,7 +44,7 @@ export type RegistrationTuple = [
35
44
  data: string[],
36
45
  reverseRecord: boolean,
37
46
  fuses: string,
38
- wrapperExpiry: number,
47
+ wrapperExpiry: BigNumberish,
39
48
  ]
40
49
 
41
50
  export type CommitmentTuple = [
@@ -47,7 +56,7 @@ export type CommitmentTuple = [
47
56
  secret: string,
48
57
  reverseRecord: boolean,
49
58
  fuses: string,
50
- wrapperExpiry: number,
59
+ wrapperExpiry: BigNumberish,
51
60
  ]
52
61
 
53
62
  export const randomSecret = () => {
@@ -93,7 +102,7 @@ export const makeCommitmentData = ({
93
102
  secret,
94
103
  !!reverseRecord,
95
104
  fuseData,
96
- wrapperExpiry || Math.floor(Date.now() / 1000) + duration,
105
+ wrapperExpiry || MAX_INT_64,
97
106
  ]
98
107
  }
99
108
 
@@ -1,14 +0,0 @@
1
- // src/functions/renewName.ts
2
- async function renewName_default({ contracts }, name, {
3
- duration,
4
- value
5
- }) {
6
- const labels = name.split(".");
7
- if (labels.length !== 2 || labels[1] !== "eth")
8
- throw new Error("Currently only .eth TLD renewals are supported");
9
- const controller = await contracts.getEthRegistrarController();
10
- return controller.populateTransaction.renew(labels[0], duration, { value });
11
- }
12
- export {
13
- renewName_default as default
14
- };
@@ -1,22 +0,0 @@
1
- import type { BigNumber } from 'ethers'
2
- import { ENSArgs } from '..'
3
-
4
- export default async function (
5
- { contracts }: ENSArgs<'contracts'>,
6
- name: string,
7
- {
8
- duration,
9
- value,
10
- }: {
11
- duration: number
12
- value: BigNumber
13
- },
14
- ) {
15
- const labels = name.split('.')
16
- if (labels.length !== 2 || labels[1] !== 'eth')
17
- throw new Error('Currently only .eth TLD renewals are supported')
18
-
19
- const controller = await contracts!.getEthRegistrarController()
20
-
21
- return controller.populateTransaction.renew(labels[0], duration, { value })
22
- }