@boostxyz/sdk 0.0.0-alpha.7 → 0.0.0-alpha.8
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/Actions/Action.cjs +1 -1
- package/dist/Actions/Action.js +1 -1
- package/dist/Actions/EventAction.cjs +1 -1
- package/dist/Actions/EventAction.cjs.map +1 -1
- package/dist/Actions/EventAction.d.ts +3 -2
- package/dist/Actions/EventAction.d.ts.map +1 -1
- package/dist/Actions/EventAction.js +10 -10
- package/dist/Actions/EventAction.js.map +1 -1
- package/dist/AllowLists/AllowList.cjs +1 -1
- package/dist/AllowLists/AllowList.d.ts +2 -2
- package/dist/AllowLists/AllowList.js +1 -1
- package/dist/AllowLists/SimpleAllowList.cjs +1 -1
- package/dist/AllowLists/SimpleAllowList.cjs.map +1 -1
- package/dist/AllowLists/SimpleAllowList.d.ts +3 -3
- package/dist/AllowLists/SimpleAllowList.d.ts.map +1 -1
- package/dist/AllowLists/SimpleAllowList.js +1 -1
- package/dist/AllowLists/SimpleAllowList.js.map +1 -1
- package/dist/AllowLists/SimpleDenyList.cjs +1 -1
- package/dist/AllowLists/SimpleDenyList.js +1 -1
- package/dist/Auth/PassthroughAuth.cjs +1 -1
- package/dist/Auth/PassthroughAuth.js +1 -1
- package/dist/BoostCore.cjs +2 -2
- package/dist/BoostCore.cjs.map +1 -1
- package/dist/BoostCore.d.ts +33 -1
- package/dist/BoostCore.d.ts.map +1 -1
- package/dist/BoostCore.js +286 -241
- package/dist/BoostCore.js.map +1 -1
- package/dist/BoostRegistry.cjs +1 -1
- package/dist/BoostRegistry.cjs.map +1 -1
- package/dist/BoostRegistry.d.ts +14 -0
- package/dist/BoostRegistry.d.ts.map +1 -1
- package/dist/BoostRegistry.js +21 -5
- package/dist/BoostRegistry.js.map +1 -1
- package/dist/Budgets/Budget.cjs +1 -1
- package/dist/Budgets/Budget.js +1 -1
- package/dist/Budgets/ManagedBudget.cjs +1 -1
- package/dist/Budgets/ManagedBudget.js +1 -1
- package/dist/Deployable/Deployable.cjs.map +1 -1
- package/dist/Deployable/Deployable.d.ts +8 -2
- package/dist/Deployable/Deployable.d.ts.map +1 -1
- package/dist/Deployable/Deployable.js +6 -0
- package/dist/Deployable/Deployable.js.map +1 -1
- package/dist/Deployable/DeployableTarget.cjs +1 -1
- package/dist/Deployable/DeployableTarget.cjs.map +1 -1
- package/dist/Deployable/DeployableTarget.d.ts +4 -3
- package/dist/Deployable/DeployableTarget.d.ts.map +1 -1
- package/dist/Deployable/DeployableTarget.js +30 -27
- package/dist/Deployable/DeployableTarget.js.map +1 -1
- package/dist/Incentives/AllowListIncentive.cjs +1 -1
- package/dist/Incentives/AllowListIncentive.js +1 -1
- package/dist/Incentives/CGDAIncentive.cjs +1 -1
- package/dist/Incentives/CGDAIncentive.js +1 -1
- package/dist/Incentives/ERC20Incentive.cjs +1 -1
- package/dist/Incentives/ERC20Incentive.js +1 -1
- package/dist/Incentives/Incentive.cjs +1 -1
- package/dist/Incentives/Incentive.js +1 -1
- package/dist/Incentives/PointsIncentive.cjs +1 -1
- package/dist/Incentives/PointsIncentive.js +1 -1
- package/dist/Validators/SignerValidator.cjs +1 -1
- package/dist/Validators/SignerValidator.js +1 -1
- package/dist/Validators/Validator.cjs +1 -1
- package/dist/Validators/Validator.js +1 -1
- package/dist/errors.cjs +1 -1
- package/dist/errors.cjs.map +1 -1
- package/dist/errors.d.ts +14 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +30 -21
- package/dist/errors.js.map +1 -1
- package/dist/{generated-Cd-Fe7W7.cjs → generated-BzszviNp.cjs} +3 -3
- package/dist/{generated-Cd-Fe7W7.cjs.map → generated-BzszviNp.cjs.map} +1 -1
- package/dist/{generated-DGpIVcv5.js → generated-Cbv8zFkf.js} +286 -278
- package/dist/{generated-DGpIVcv5.js.map → generated-Cbv8zFkf.js.map} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +105 -104
- package/package.json +1 -1
- package/src/Actions/EventAction.ts +10 -2
- package/src/AllowLists/SimpleAllowList.ts +3 -2
- package/src/BoostCore.ts +76 -13
- package/src/BoostRegistry.ts +21 -0
- package/src/Deployable/Deployable.ts +8 -2
- package/src/Deployable/DeployableTarget.ts +17 -4
- package/src/errors.ts +18 -0
|
@@ -2,7 +2,7 @@ import { simpleAllowListAbi } from '@boostxyz/evm';
|
|
|
2
2
|
import { type Address, type ContractEventName } from 'viem';
|
|
3
3
|
import type { DeployableOptions, GenericDeployableParams } from '../Deployable/Deployable';
|
|
4
4
|
import { DeployableTarget } from '../Deployable/DeployableTarget';
|
|
5
|
-
import { type GenericLog, type ReadParams, RegistryType, type SimpleAllowListPayload } from '../utils';
|
|
5
|
+
import { type GenericLog, type ReadParams, RegistryType, type SimpleAllowListPayload, type WriteParams } from '../utils';
|
|
6
6
|
export { simpleAllowListAbi };
|
|
7
7
|
export type { SimpleAllowListPayload };
|
|
8
8
|
/**
|
|
@@ -398,7 +398,7 @@ export declare class SimpleAllowList extends DeployableTarget<SimpleAllowListPay
|
|
|
398
398
|
* @param {?ReadParams<typeof simpleAllowListAbi, 'setAllowed'>} [params]
|
|
399
399
|
* @returns {Promise<void>}
|
|
400
400
|
*/
|
|
401
|
-
setAllowed(addresses: Address[], allowed: boolean[], params?:
|
|
401
|
+
setAllowed(addresses: Address[], allowed: boolean[], params?: WriteParams<typeof simpleAllowListAbi, 'setAllowed'>): Promise<void>;
|
|
402
402
|
/**
|
|
403
403
|
* Set the allowed status of a user. The length of the `users_` and `allowed_` arrays must be the same.
|
|
404
404
|
* This function can only be called by the owner
|
|
@@ -424,7 +424,7 @@ export declare class SimpleAllowList extends DeployableTarget<SimpleAllowListPay
|
|
|
424
424
|
* @param {?ReadParams<typeof simpleAllowListAbi, 'grantRoles'>} [params]
|
|
425
425
|
* @returns {Promise<void>}
|
|
426
426
|
*/
|
|
427
|
-
grantRoles(address: Address, role: bigint, params?:
|
|
427
|
+
grantRoles(address: Address, role: bigint, params?: WriteParams<typeof simpleAllowListAbi, 'grantRoles'>): Promise<void>;
|
|
428
428
|
/**
|
|
429
429
|
* Allows the owner to grant `user` `roles`.
|
|
430
430
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleAllowList.d.ts","sourceRoot":"","sources":["../../src/AllowLists/SimpleAllowList.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAKnB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,iBAAiB,EAIvB,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,EACL,KAAK,UAAU,EACf,KAAK,UAAU,EACf,YAAY,EACZ,KAAK,sBAAsB,
|
|
1
|
+
{"version":3,"file":"SimpleAllowList.d.ts","sourceRoot":"","sources":["../../src/AllowLists/SimpleAllowList.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAKnB,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,iBAAiB,EAIvB,MAAM,MAAM,CAAC;AACd,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,EACL,KAAK,UAAU,EACf,KAAK,UAAU,EACf,YAAY,EACZ,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAEjB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,sBAAsB,EAAE,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,CAC5B,KAAK,SAAS,iBAAiB,CAC7B,OAAO,kBAAkB,CAC1B,GAAG,iBAAiB,CAAC,OAAO,kBAAkB,CAAC,IAC9C,UAAU,CAAC,OAAO,kBAAkB,EAAE,KAAK,CAAC,CAAC;AAEjD;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,KAAK,CAAC;AACpC;;;;;;;GAOG;AACH,qBAAa,eAAgB,SAAQ,gBAAgB,CACnD,sBAAsB,EACtB,OAAO,kBAAkB,CAC1B;IACC,SAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAsB;IAClD;;;;;;OAMG;IACH,OAAuB,IAAI,EAAE,OAAO,CACN;IAC9B;;;;;;OAMG;IACH,OAAuB,YAAY,EAAE,YAAY,CAA2B;IAE5E;;;;;;;;OAQG;IACU,SAAS,CACpB,OAAO,EAAE,OAAO,EAChB,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,EAAE,YAAY,CAAC,GAC3D,OAAO,CAAC,OAAO,CAAC;IAUnB;;;;;;;;;;OAUG;IACU,UAAU,CACrB,SAAS,EAAE,OAAO,EAAE,EACpB,OAAO,EAAE,OAAO,EAAE,EAClB,MAAM,CAAC,EAAE,WAAW,CAAC,OAAO,kBAAkB,EAAE,YAAY,CAAC;IAK/D;;;;;;;;;;OAUG;IACU,aAAa,CACxB,SAAS,EAAE,OAAO,EAAE,EACpB,OAAO,EAAE,OAAO,EAAE,EAClB,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,EAAE,YAAY,CAAC;;;;IAgB9D;;;;;;;;;OASG;IACU,UAAU,CACrB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,WAAW,CAAC,OAAO,kBAAkB,EAAE,YAAY,CAAC;IAK/D;;;;;;;;;OASG;IACU,aAAa,CACxB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,EAAE,YAAY,CAAC;;;;IAgB9D;;;;;;;OAOG;IACa,eAAe,CAC7B,QAAQ,CAAC,EAAE,sBAAsB,EACjC,QAAQ,CAAC,EAAE,iBAAiB,GAC3B,uBAAuB;CAwB3B"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { T as t, a7 as o, a8 as i, a9 as n, aa as h, ab as l } from "../generated-
|
|
1
|
+
import { T as t, a7 as o, a8 as i, a9 as n, aa as h, ab as l } from "../generated-Cbv8zFkf.js";
|
|
2
2
|
import { getAccount as u } from "@wagmi/core";
|
|
3
3
|
import { zeroHash as A, zeroAddress as w } from "viem";
|
|
4
4
|
import { DeployableTarget as g } from "../Deployable/DeployableTarget.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleAllowList.js","sources":["../../src/AllowLists/SimpleAllowList.ts"],"sourcesContent":["import {\n readSimpleAllowListIsAllowed,\n simpleAllowListAbi,\n simulateSimpleAllowListGrantRoles,\n simulateSimpleAllowListSetAllowed,\n writeSimpleAllowListGrantRoles,\n writeSimpleAllowListSetAllowed,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/SimpleAllowList.sol/SimpleAllowList.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n zeroAddress,\n zeroHash,\n} from 'viem';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport { DeployableUnknownOwnerProvidedError } from '../errors';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type SimpleAllowListPayload,\n prepareSimpleAllowListPayload,\n} from '../utils';\n\nexport { simpleAllowListAbi };\nexport type { SimpleAllowListPayload };\n\n/**\n * A generic `viem.Log` event with support for `SimpleAllowList` event types.\n *\n * @export\n * @typedef {SimpleAllowListLog}\n * @template {ContractEventName<\n * typeof simpleAllowListAbi\n * >} [event=ContractEventName<typeof simpleAllowListAbi>]\n */\nexport type SimpleAllowListLog<\n event extends ContractEventName<\n typeof simpleAllowListAbi\n > = ContractEventName<typeof simpleAllowListAbi>,\n> = GenericLog<typeof simpleAllowListAbi, event>;\n\n/**\n * A constant representing the list manager's role\n *\n * @type {2n}\n */\nexport const LIST_MANAGER_ROLE = 2n;\n/**\n * A simple implementation of an AllowList that checks if a user is authorized based on a list of allowed addresses\n *\n * @export\n * @class SimpleAllowList\n * @typedef {SimpleAllowList}\n * @extends {DeployableTarget<SimpleAllowListPayload>}\n */\nexport class SimpleAllowList extends DeployableTarget<\n SimpleAllowListPayload,\n typeof simpleAllowListAbi\n> {\n public override readonly abi = simpleAllowListAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Address}\n */\n public static override base: Address = import.meta.env\n .VITE_SIMPLE_ALLOWLIST_BASE;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.ALLOW_LIST;\n\n /**\n * Check if a user is authorized.\n *\n * @public\n * @async\n * @param {Address} address - The address of the user\n * @param {?ReadParams<typeof simpleAllowListAbi, 'setAllowed'>} [params]\n * @returns {Promise<boolean>} - True if the user is authorized\n */\n public async isAllowed(\n address: Address,\n params?: ReadParams<typeof simpleAllowListAbi, 'setAllowed'>,\n ): Promise<boolean> {\n return await readSimpleAllowListIsAllowed(this._config, {\n address: this.assertValidAddress(),\n args: [address, zeroHash],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Set the allowed status of a user. The length of the `users_` and `allowed_` arrays must be the same.\n * This function can only be called by the owner\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of users to update\n * @param {boolean[]} allowed - The allowed status of each user\n * @param {?ReadParams<typeof simpleAllowListAbi, 'setAllowed'>} [params]\n * @returns {Promise<void>}\n */\n public async setAllowed(\n addresses: Address[],\n allowed: boolean[],\n params?: ReadParams<typeof simpleAllowListAbi, 'setAllowed'>,\n ) {\n return this.awaitResult(this.setAllowedRaw(addresses, allowed, params));\n }\n\n /**\n * Set the allowed status of a user. The length of the `users_` and `allowed_` arrays must be the same.\n * This function can only be called by the owner\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of users to update\n * @param {boolean[]} allowed - The allowed status of each user\n * @param {?ReadParams<typeof simpleAllowListAbi, 'setAllowed'>} [params]\n * @returns {Promise<void>}\n */\n public async setAllowedRaw(\n addresses: Address[],\n allowed: boolean[],\n params?: ReadParams<typeof simpleAllowListAbi, 'setAllowed'>,\n ) {\n const { request, result } = await simulateSimpleAllowListSetAllowed(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [addresses, allowed],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSimpleAllowListSetAllowed(this._config, request);\n return { hash, result };\n }\n\n /**\n * Allows the owner to grant `user` `roles`.\n *\n * @public\n * @async\n * @param {Address} address\n * @param {bigint} role\n * @param {?ReadParams<typeof simpleAllowListAbi, 'grantRoles'>} [params]\n * @returns {Promise<void>}\n */\n public async grantRoles(\n address: Address,\n role: bigint,\n params?: ReadParams<typeof simpleAllowListAbi, 'grantRoles'>,\n ) {\n return this.awaitResult(this.grantRolesRaw(address, role, params));\n }\n\n /**\n * Allows the owner to grant `user` `roles`.\n *\n * @public\n * @async\n * @param {Address} address\n * @param {bigint} role\n * @param {?ReadParams<typeof simpleAllowListAbi, 'grantRoles'>} [params]\n * @returns {Promise<void>}\n */\n public async grantRolesRaw(\n address: Address,\n role: bigint,\n params?: ReadParams<typeof simpleAllowListAbi, 'grantRoles'>,\n ) {\n const { request, result } = await simulateSimpleAllowListGrantRoles(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [address, role],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSimpleAllowListGrantRoles(this._config, request);\n return { hash, result };\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SimpleAllowListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SimpleAllowListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: simpleAllowListAbi,\n bytecode: bytecode as Hex,\n args: [prepareSimpleAllowListPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n"],"names":["LIST_MANAGER_ROLE","_SimpleAllowList","DeployableTarget","simpleAllowListAbi","address","params","readSimpleAllowListIsAllowed","zeroHash","addresses","allowed","request","result","simulateSimpleAllowListSetAllowed","writeSimpleAllowListSetAllowed","role","simulateSimpleAllowListGrantRoles","writeSimpleAllowListGrantRoles","_payload","_options","payload","options","zeroAddress","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareSimpleAllowListPayload","RegistryType","SimpleAllowList"],"mappings":";;;;;;s6UAsDaA,IAAoB,IASpBC,IAAN,MAAMA,UAAwBC,EAGnC;AAAA,EAHK,cAAA;AAAA,UAAA,GAAA,SAAA,GAIL,KAAyB,MAAMC;AAAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA4B/B,MAAa,UACXC,GACAC,GACkB;AACX,WAAA,MAAMC,EAA6B,KAAK,SAAS;AAAA,MACtD,SAAS,KAAK,mBAAmB;AAAA,MACjC,MAAM,CAACF,GAASG,CAAQ;AAAA,MACxB,GAAG,KAAK,wBAAwB;AAAA;AAAA,MAEhC,GAAIF;AAAA,IAAA,CACL;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,MAAa,WACXG,GACAC,GACAJ,GACA;AACA,WAAO,KAAK,YAAY,KAAK,cAAcG,GAAWC,GAASJ,CAAM,CAAC;AAAA,EACxE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,MAAa,cACXG,GACAC,GACAJ,GACA;AACA,UAAM,EAAE,SAAAK,GAAS,QAAAC,EAAO,IAAI,MAAMC;AAAAA,MAChC,KAAK;AAAA,MACL;AAAA,QACE,SAAS,KAAK,mBAAmB;AAAA,QACjC,MAAM,CAACJ,GAAWC,CAAO;AAAA,QACzB,GAAG,KAAK,wBAAwB;AAAA;AAAA,QAEhC,GAAIJ;AAAA,MACN;AAAA,IAAA;AAGK,WAAA,EAAE,MADI,MAAMQ,EAA+B,KAAK,SAASH,CAAO,GACxD,QAAAC;EACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,MAAa,WACXP,GACAU,GACAT,GACA;AACA,WAAO,KAAK,YAAY,KAAK,cAAcD,GAASU,GAAMT,CAAM,CAAC;AAAA,EACnE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,MAAa,cACXD,GACAU,GACAT,GACA;AACA,UAAM,EAAE,SAAAK,GAAS,QAAAC,EAAO,IAAI,MAAMI;AAAAA,MAChC,KAAK;AAAA,MACL;AAAA,QACE,SAAS,KAAK,mBAAmB;AAAA,QACjC,MAAM,CAACX,GAASU,CAAI;AAAA,QACpB,GAAG,KAAK,wBAAwB;AAAA;AAAA,QAEhC,GAAIT;AAAA,MACN;AAAA,IAAA;AAGK,WAAA,EAAE,MADI,MAAMW,EAA+B,KAAK,SAASN,CAAO,GACxD,QAAAC;EACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUgB,gBACdM,GACAC,GACyB;;AACzB,UAAM,CAACC,GAASC,CAAO,IAAI,KAAK;AAAA,MAC9BH;AAAA,MACAC;AAAA,IAAA;AAEF,QAAI,CAACC,EAAQ,SAASA,EAAQ,UAAUE,GAAa;AACnD,YAAMC,IAAQF,EAAQ,UAClBA,EAAQ,QAAQ,UAChBA,EAAQ,SACNG,EAAWH,EAAQ,MAAM,EAAE,WAC3BI,IAAA,KAAK,aAAL,gBAAAA,EAAe;AACrB,UAAIF;AACF,QAAAH,EAAQ,QAAQG;AAAA;AAEhB,cAAM,IAAIG,EAAoC;AAAA,IAElD;AACO,WAAA;AAAA,MACL,KAAKtB;AAAAA,MACL,UAAAuB;AAAA,MACA,MAAM,CAACC,EAA8BR,CAAO,CAAC;AAAA,MAC7C,GAAG,KAAK,wBAAwBC,EAAQ,OAAO;AAAA,IAAA;AAAA,EAEnD;AACF;AApKyBnB,EAAA,OAAgB,8CASvCA,EAAuB,eAA6B2B,EAAa;AArB5D,IAAMC,IAAN5B;"}
|
|
1
|
+
{"version":3,"file":"SimpleAllowList.js","sources":["../../src/AllowLists/SimpleAllowList.ts"],"sourcesContent":["import {\n readSimpleAllowListIsAllowed,\n simpleAllowListAbi,\n simulateSimpleAllowListGrantRoles,\n simulateSimpleAllowListSetAllowed,\n writeSimpleAllowListGrantRoles,\n writeSimpleAllowListSetAllowed,\n} from '@boostxyz/evm';\nimport { bytecode } from '@boostxyz/evm/artifacts/contracts/allowlists/SimpleAllowList.sol/SimpleAllowList.json';\nimport { getAccount } from '@wagmi/core';\nimport {\n type Address,\n type ContractEventName,\n type Hex,\n zeroAddress,\n zeroHash,\n} from 'viem';\nimport type {\n DeployableOptions,\n GenericDeployableParams,\n} from '../Deployable/Deployable';\nimport { DeployableTarget } from '../Deployable/DeployableTarget';\nimport { DeployableUnknownOwnerProvidedError } from '../errors';\nimport {\n type GenericLog,\n type ReadParams,\n RegistryType,\n type SimpleAllowListPayload,\n type WriteParams,\n prepareSimpleAllowListPayload,\n} from '../utils';\n\nexport { simpleAllowListAbi };\nexport type { SimpleAllowListPayload };\n\n/**\n * A generic `viem.Log` event with support for `SimpleAllowList` event types.\n *\n * @export\n * @typedef {SimpleAllowListLog}\n * @template {ContractEventName<\n * typeof simpleAllowListAbi\n * >} [event=ContractEventName<typeof simpleAllowListAbi>]\n */\nexport type SimpleAllowListLog<\n event extends ContractEventName<\n typeof simpleAllowListAbi\n > = ContractEventName<typeof simpleAllowListAbi>,\n> = GenericLog<typeof simpleAllowListAbi, event>;\n\n/**\n * A constant representing the list manager's role\n *\n * @type {2n}\n */\nexport const LIST_MANAGER_ROLE = 2n;\n/**\n * A simple implementation of an AllowList that checks if a user is authorized based on a list of allowed addresses\n *\n * @export\n * @class SimpleAllowList\n * @typedef {SimpleAllowList}\n * @extends {DeployableTarget<SimpleAllowListPayload>}\n */\nexport class SimpleAllowList extends DeployableTarget<\n SimpleAllowListPayload,\n typeof simpleAllowListAbi\n> {\n public override readonly abi = simpleAllowListAbi;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {Address}\n */\n public static override base: Address = import.meta.env\n .VITE_SIMPLE_ALLOWLIST_BASE;\n /**\n * @inheritdoc\n *\n * @public\n * @static\n * @type {RegistryType}\n */\n public static override registryType: RegistryType = RegistryType.ALLOW_LIST;\n\n /**\n * Check if a user is authorized.\n *\n * @public\n * @async\n * @param {Address} address - The address of the user\n * @param {?ReadParams<typeof simpleAllowListAbi, 'setAllowed'>} [params]\n * @returns {Promise<boolean>} - True if the user is authorized\n */\n public async isAllowed(\n address: Address,\n params?: ReadParams<typeof simpleAllowListAbi, 'setAllowed'>,\n ): Promise<boolean> {\n return await readSimpleAllowListIsAllowed(this._config, {\n address: this.assertValidAddress(),\n args: [address, zeroHash],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n });\n }\n\n /**\n * Set the allowed status of a user. The length of the `users_` and `allowed_` arrays must be the same.\n * This function can only be called by the owner\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of users to update\n * @param {boolean[]} allowed - The allowed status of each user\n * @param {?ReadParams<typeof simpleAllowListAbi, 'setAllowed'>} [params]\n * @returns {Promise<void>}\n */\n public async setAllowed(\n addresses: Address[],\n allowed: boolean[],\n params?: WriteParams<typeof simpleAllowListAbi, 'setAllowed'>,\n ) {\n return this.awaitResult(this.setAllowedRaw(addresses, allowed, params));\n }\n\n /**\n * Set the allowed status of a user. The length of the `users_` and `allowed_` arrays must be the same.\n * This function can only be called by the owner\n *\n * @public\n * @async\n * @param {Address[]} addresses - The list of users to update\n * @param {boolean[]} allowed - The allowed status of each user\n * @param {?ReadParams<typeof simpleAllowListAbi, 'setAllowed'>} [params]\n * @returns {Promise<void>}\n */\n public async setAllowedRaw(\n addresses: Address[],\n allowed: boolean[],\n params?: ReadParams<typeof simpleAllowListAbi, 'setAllowed'>,\n ) {\n const { request, result } = await simulateSimpleAllowListSetAllowed(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [addresses, allowed],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSimpleAllowListSetAllowed(this._config, request);\n return { hash, result };\n }\n\n /**\n * Allows the owner to grant `user` `roles`.\n *\n * @public\n * @async\n * @param {Address} address\n * @param {bigint} role\n * @param {?ReadParams<typeof simpleAllowListAbi, 'grantRoles'>} [params]\n * @returns {Promise<void>}\n */\n public async grantRoles(\n address: Address,\n role: bigint,\n params?: WriteParams<typeof simpleAllowListAbi, 'grantRoles'>,\n ) {\n return this.awaitResult(this.grantRolesRaw(address, role, params));\n }\n\n /**\n * Allows the owner to grant `user` `roles`.\n *\n * @public\n * @async\n * @param {Address} address\n * @param {bigint} role\n * @param {?ReadParams<typeof simpleAllowListAbi, 'grantRoles'>} [params]\n * @returns {Promise<void>}\n */\n public async grantRolesRaw(\n address: Address,\n role: bigint,\n params?: ReadParams<typeof simpleAllowListAbi, 'grantRoles'>,\n ) {\n const { request, result } = await simulateSimpleAllowListGrantRoles(\n this._config,\n {\n address: this.assertValidAddress(),\n args: [address, role],\n ...this.optionallyAttachAccount(),\n // biome-ignore lint/suspicious/noExplicitAny: Accept any shape of valid wagmi/viem parameters, wagmi does the same thing internally\n ...(params as any),\n },\n );\n const hash = await writeSimpleAllowListGrantRoles(this._config, request);\n return { hash, result };\n }\n\n /**\n * @inheritdoc\n *\n * @public\n * @param {?SimpleAllowListPayload} [_payload]\n * @param {?DeployableOptions} [_options]\n * @returns {GenericDeployableParams}\n */\n public override buildParameters(\n _payload?: SimpleAllowListPayload,\n _options?: DeployableOptions,\n ): GenericDeployableParams {\n const [payload, options] = this.validateDeploymentConfig(\n _payload,\n _options,\n );\n if (!payload.owner || payload.owner === zeroAddress) {\n const owner = options.account\n ? options.account.address\n : options.config\n ? getAccount(options.config).address\n : this._account?.address;\n if (owner) {\n payload.owner = owner;\n } else {\n throw new DeployableUnknownOwnerProvidedError();\n }\n }\n return {\n abi: simpleAllowListAbi,\n bytecode: bytecode as Hex,\n args: [prepareSimpleAllowListPayload(payload)],\n ...this.optionallyAttachAccount(options.account),\n };\n }\n}\n"],"names":["LIST_MANAGER_ROLE","_SimpleAllowList","DeployableTarget","simpleAllowListAbi","address","params","readSimpleAllowListIsAllowed","zeroHash","addresses","allowed","request","result","simulateSimpleAllowListSetAllowed","writeSimpleAllowListSetAllowed","role","simulateSimpleAllowListGrantRoles","writeSimpleAllowListGrantRoles","_payload","_options","payload","options","zeroAddress","owner","getAccount","_a","DeployableUnknownOwnerProvidedError","bytecode","prepareSimpleAllowListPayload","RegistryType","SimpleAllowList"],"mappings":";;;;;;s6UAuDaA,IAAoB,IASpBC,IAAN,MAAMA,UAAwBC,EAGnC;AAAA,EAHK,cAAA;AAAA,UAAA,GAAA,SAAA,GAIL,KAAyB,MAAMC;AAAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EA4B/B,MAAa,UACXC,GACAC,GACkB;AACX,WAAA,MAAMC,EAA6B,KAAK,SAAS;AAAA,MACtD,SAAS,KAAK,mBAAmB;AAAA,MACjC,MAAM,CAACF,GAASG,CAAQ;AAAA,MACxB,GAAG,KAAK,wBAAwB;AAAA;AAAA,MAEhC,GAAIF;AAAA,IAAA,CACL;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,MAAa,WACXG,GACAC,GACAJ,GACA;AACA,WAAO,KAAK,YAAY,KAAK,cAAcG,GAAWC,GAASJ,CAAM,CAAC;AAAA,EACxE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaA,MAAa,cACXG,GACAC,GACAJ,GACA;AACA,UAAM,EAAE,SAAAK,GAAS,QAAAC,EAAO,IAAI,MAAMC;AAAAA,MAChC,KAAK;AAAA,MACL;AAAA,QACE,SAAS,KAAK,mBAAmB;AAAA,QACjC,MAAM,CAACJ,GAAWC,CAAO;AAAA,QACzB,GAAG,KAAK,wBAAwB;AAAA;AAAA,QAEhC,GAAIJ;AAAA,MACN;AAAA,IAAA;AAGK,WAAA,EAAE,MADI,MAAMQ,EAA+B,KAAK,SAASH,CAAO,GACxD,QAAAC;EACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,MAAa,WACXP,GACAU,GACAT,GACA;AACA,WAAO,KAAK,YAAY,KAAK,cAAcD,GAASU,GAAMT,CAAM,CAAC;AAAA,EACnE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAYA,MAAa,cACXD,GACAU,GACAT,GACA;AACA,UAAM,EAAE,SAAAK,GAAS,QAAAC,EAAO,IAAI,MAAMI;AAAAA,MAChC,KAAK;AAAA,MACL;AAAA,QACE,SAAS,KAAK,mBAAmB;AAAA,QACjC,MAAM,CAACX,GAASU,CAAI;AAAA,QACpB,GAAG,KAAK,wBAAwB;AAAA;AAAA,QAEhC,GAAIT;AAAA,MACN;AAAA,IAAA;AAGK,WAAA,EAAE,MADI,MAAMW,EAA+B,KAAK,SAASN,CAAO,GACxD,QAAAC;EACjB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUgB,gBACdM,GACAC,GACyB;;AACzB,UAAM,CAACC,GAASC,CAAO,IAAI,KAAK;AAAA,MAC9BH;AAAA,MACAC;AAAA,IAAA;AAEF,QAAI,CAACC,EAAQ,SAASA,EAAQ,UAAUE,GAAa;AACnD,YAAMC,IAAQF,EAAQ,UAClBA,EAAQ,QAAQ,UAChBA,EAAQ,SACNG,EAAWH,EAAQ,MAAM,EAAE,WAC3BI,IAAA,KAAK,aAAL,gBAAAA,EAAe;AACrB,UAAIF;AACF,QAAAH,EAAQ,QAAQG;AAAA;AAEhB,cAAM,IAAIG,EAAoC;AAAA,IAElD;AACO,WAAA;AAAA,MACL,KAAKtB;AAAAA,MACL,UAAAuB;AAAA,MACA,MAAM,CAACC,EAA8BR,CAAO,CAAC;AAAA,MAC7C,GAAG,KAAK,wBAAwBC,EAAQ,OAAO;AAAA,IAAA;AAAA,EAEnD;AACF;AApKyBnB,EAAA,OAAgB,8CASvCA,EAAuB,eAA6B2B,EAAa;AArB5D,IAAMC,IAAN5B;"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("../generated-Cd-Fe7W7.cjs"),n=require("@wagmi/core"),o=require("viem"),l=require("../Deployable/DeployableTarget.cjs"),u=require("../errors.cjs"),i=require("../utils.cjs"),h="0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f602c608760201b60201c565b90508054600181161560455763f92ee8a95f526004601cfd5b8160c01c808260011c146082578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b6110ac806100bd5f395ff3fe6080604052600436106100a6575f3560e01c8063715018a611610063578063715018a6146101745780638da5cb5b1461017e578063e3f756de146101a8578063f04e283e146101e4578063f2fde38b14610200578063fee81cf41461021c576100a6565b806301ffc9a7146100aa578063141973b0146100e6578063256929621461010e57806328d6183b14610118578063439fab911461014257806354d1f13d1461016a575b5f80fd5b3480156100b5575f80fd5b506100d060048036038101906100cb9190610a82565b610258565b6040516100dd9190610ac7565b60405180910390f35b3480156100f1575f80fd5b5061010c60048036038101906101079190610b96565b6102d1565b005b6101166103da565b005b348015610123575f80fd5b5061012c61042b565b6040516101399190610c23565b60405180910390f35b34801561014d575f80fd5b5061016860048036038101906101639190610c91565b610452565b005b61017261056f565b005b61017c6105a8565b005b348015610189575f80fd5b506101926105bb565b60405161019f9190610d1b565b60405180910390f35b3480156101b3575f80fd5b506101ce60048036038101906101c99190610d5e565b6105e3565b6040516101db9190610ac7565b60405180910390f35b6101fe60048036038101906101f99190610dbb565b610637565b005b61021a60048036038101906102159190610dbb565b610675565b005b348015610227575f80fd5b50610242600480360381019061023d9190610dbb565b61069e565b60405161024f9190610dfe565b60405180910390f35b5f7f3d30a22c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806102ca57506102c9826106b7565b5b9050919050565b6102d9610730565b818190508484905014610318576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848490508110156103d35782828281811061033857610337610e17565b5b905060200201602081019061034d9190610e6e565b5f8087878581811061036257610361610e17565b5b90506020020160208101906103779190610dbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061031a565b5050505050565b5f6103e3610767565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7f3d30a22c00000000000000000000000000000000000000000000000000000000905090565b5f61045b610771565b9050805460038255801561048d5760018160011c14303b106104845763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f80848481019061049f919061101c565b915091506104ac8261079a565b5f5b81518110156105325760015f808484815181106104ce576104cd610e17565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506104ae565b505050801561056a576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b6105b0610730565b6105b95f610870565b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161590509392505050565b61063f610730565b63389a75e1600c52805f526020600c20805442111561066557636f5e88185f526004601cfd5b5f81555061067281610870565b50565b61067d610730565b8060601b61069257637448fbae5f526004601cfd5b61069b81610870565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fe2089f79000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610729575061072882610936565b5b9050919050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610765576382b429005f526004601cfd5b565b5f6202a300905090565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b6107a26109af565b1561081a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278054156107dc57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35061086d565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b6108786109af565b156108dd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610933565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109a857506109a7826109b3565b5b9050919050565b5f90565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b610a6181610a2d565b8114610a6b575f80fd5b50565b5f81359050610a7c81610a58565b92915050565b5f60208284031215610a9757610a96610a25565b5b5f610aa484828501610a6e565b91505092915050565b5f8115159050919050565b610ac181610aad565b82525050565b5f602082019050610ada5f830184610ab8565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112610b0157610b00610ae0565b5b8235905067ffffffffffffffff811115610b1e57610b1d610ae4565b5b602083019150836020820283011115610b3a57610b39610ae8565b5b9250929050565b5f8083601f840112610b5657610b55610ae0565b5b8235905067ffffffffffffffff811115610b7357610b72610ae4565b5b602083019150836020820283011115610b8f57610b8e610ae8565b5b9250929050565b5f805f8060408587031215610bae57610bad610a25565b5b5f85013567ffffffffffffffff811115610bcb57610bca610a29565b5b610bd787828801610aec565b9450945050602085013567ffffffffffffffff811115610bfa57610bf9610a29565b5b610c0687828801610b41565b925092505092959194509250565b610c1d81610a2d565b82525050565b5f602082019050610c365f830184610c14565b92915050565b5f8083601f840112610c5157610c50610ae0565b5b8235905067ffffffffffffffff811115610c6e57610c6d610ae4565b5b602083019150836001820283011115610c8a57610c89610ae8565b5b9250929050565b5f8060208385031215610ca757610ca6610a25565b5b5f83013567ffffffffffffffff811115610cc457610cc3610a29565b5b610cd085828601610c3c565b92509250509250929050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610d0582610cdc565b9050919050565b610d1581610cfb565b82525050565b5f602082019050610d2e5f830184610d0c565b92915050565b610d3d81610cfb565b8114610d47575f80fd5b50565b5f81359050610d5881610d34565b92915050565b5f805f60408486031215610d7557610d74610a25565b5b5f610d8286828701610d4a565b935050602084013567ffffffffffffffff811115610da357610da2610a29565b5b610daf86828701610c3c565b92509250509250925092565b5f60208284031215610dd057610dcf610a25565b5b5f610ddd84828501610d4a565b91505092915050565b5f819050919050565b610df881610de6565b82525050565b5f602082019050610e115f830184610def565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b610e4d81610aad565b8114610e57575f80fd5b50565b5f81359050610e6881610e44565b92915050565b5f60208284031215610e8357610e82610a25565b5b5f610e9084828501610e5a565b91505092915050565b5f610ea382610cdc565b9050919050565b610eb381610e99565b8114610ebd575f80fd5b50565b5f81359050610ece81610eaa565b92915050565b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610f1a82610ed4565b810181811067ffffffffffffffff82111715610f3957610f38610ee4565b5b80604052505050565b5f610f4b610a1c565b9050610f578282610f11565b919050565b5f67ffffffffffffffff821115610f7657610f75610ee4565b5b602082029050602081019050919050565b5f610f99610f9484610f5c565b610f42565b90508083825260208201905060208402830185811115610fbc57610fbb610ae8565b5b835b81811015610fe55780610fd18882610d4a565b845260208401935050602081019050610fbe565b5050509392505050565b5f82601f83011261100357611002610ae0565b5b8135611013848260208601610f87565b91505092915050565b5f806040838503121561103257611031610a25565b5b5f61103f85828601610ec0565b925050602083013567ffffffffffffffff8111156110605761105f610a29565b5b61106c85828601610fef565b915050925092905056fea2646970667358221220f8901ba0ad91db050edba1d0412882eecda8dba26237dd3383d77357c2f7173964736f6c634300081a0033",t=class t extends l.DeployableTarget{constructor(){super(...arguments),this.abi=d.S}async isAllowed(b,a){return await d.A2(this._config,{address:this.assertValidAddress(),args:[b,o.zeroHash],...this.optionallyAttachAccount(),...a})}async setDenied(b,a,f){return this.awaitResult(this.setDeniedRaw(b,a,f))}async setDeniedRaw(b,a,f){const{request:e,result:c}=await d.k2(this._config,{address:this.assertValidAddress(),args:[b,a],...this.optionallyAttachAccount(),...f});return{hash:await d.B2(this._config,e),result:c}}buildParameters(b,a){var c;const[f,e]=this.validateDeploymentConfig(b,a);if(!f.owner||f.owner===o.zeroAddress){const s=e.account?e.account.address:e.config?n.getAccount(e.config).address:(c=this._account)==null?void 0:c.address;if(s)f.owner=s;else throw new u.DeployableUnknownOwnerProvidedError}return{abi:d.S,bytecode:h,args:[i.prepareSimpleDenyListPayload(f)],...this.optionallyAttachAccount(e.account)}}};t.base="0x41A7c1aCC75BEccD11B8F586510759883092460F",t.registryType=i.RegistryType.ALLOW_LIST;let r=t;exports.simpleDenyListAbi=d.S;exports.SimpleDenyList=r;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const d=require("../generated-BzszviNp.cjs"),n=require("@wagmi/core"),o=require("viem"),l=require("../Deployable/DeployableTarget.cjs"),u=require("../errors.cjs"),i=require("../utils.cjs"),h="0x6080604052348015600e575f80fd5b50601b601f60201b60201c565b60b0565b5f602c608760201b60201c565b90508054600181161560455763f92ee8a95f526004601cfd5b8160c01c808260011c146082578060011b8355806020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b6110ac806100bd5f395ff3fe6080604052600436106100a6575f3560e01c8063715018a611610063578063715018a6146101745780638da5cb5b1461017e578063e3f756de146101a8578063f04e283e146101e4578063f2fde38b14610200578063fee81cf41461021c576100a6565b806301ffc9a7146100aa578063141973b0146100e6578063256929621461010e57806328d6183b14610118578063439fab911461014257806354d1f13d1461016a575b5f80fd5b3480156100b5575f80fd5b506100d060048036038101906100cb9190610a82565b610258565b6040516100dd9190610ac7565b60405180910390f35b3480156100f1575f80fd5b5061010c60048036038101906101079190610b96565b6102d1565b005b6101166103da565b005b348015610123575f80fd5b5061012c61042b565b6040516101399190610c23565b60405180910390f35b34801561014d575f80fd5b5061016860048036038101906101639190610c91565b610452565b005b61017261056f565b005b61017c6105a8565b005b348015610189575f80fd5b506101926105bb565b60405161019f9190610d1b565b60405180910390f35b3480156101b3575f80fd5b506101ce60048036038101906101c99190610d5e565b6105e3565b6040516101db9190610ac7565b60405180910390f35b6101fe60048036038101906101f99190610dbb565b610637565b005b61021a60048036038101906102159190610dbb565b610675565b005b348015610227575f80fd5b50610242600480360381019061023d9190610dbb565b61069e565b60405161024f9190610dfe565b60405180910390f35b5f7f3d30a22c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806102ca57506102c9826106b7565b5b9050919050565b6102d9610730565b818190508484905014610318576040517fff633a3800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5b848490508110156103d35782828281811061033857610337610e17565b5b905060200201602081019061034d9190610e6e565b5f8087878581811061036257610361610e17565b5b90506020020160208101906103779190610dbb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061031a565b5050505050565b5f6103e3610767565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b5f7f3d30a22c00000000000000000000000000000000000000000000000000000000905090565b5f61045b610771565b9050805460038255801561048d5760018160011c14303b106104845763f92ee8a95f526004601cfd5b818160ff1b1b91505b505f80848481019061049f919061101c565b915091506104ac8261079a565b5f5b81518110156105325760015f808484815181106104ce576104cd610e17565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506104ae565b505050801561056a576002815560016020527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2602080a15b505050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b6105b0610730565b6105b95f610870565b565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161590509392505050565b61063f610730565b63389a75e1600c52805f526020600c20805442111561066557636f5e88185f526004601cfd5b5f81555061067281610870565b50565b61067d610730565b8060601b61069257637448fbae5f526004601cfd5b61069b81610870565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f7fe2089f79000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610729575061072882610936565b5b9050919050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314610765576382b429005f526004601cfd5b565b5f6202a300905090565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffbf6011325f1b905090565b6107a26109af565b1561081a577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278054156107dc57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35061086d565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b6108786109af565b156108dd577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b8217815550610933565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f7f6ab67a0d000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109a857506109a7826109b3565b5b9050919050565b5f90565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b610a6181610a2d565b8114610a6b575f80fd5b50565b5f81359050610a7c81610a58565b92915050565b5f60208284031215610a9757610a96610a25565b5b5f610aa484828501610a6e565b91505092915050565b5f8115159050919050565b610ac181610aad565b82525050565b5f602082019050610ada5f830184610ab8565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112610b0157610b00610ae0565b5b8235905067ffffffffffffffff811115610b1e57610b1d610ae4565b5b602083019150836020820283011115610b3a57610b39610ae8565b5b9250929050565b5f8083601f840112610b5657610b55610ae0565b5b8235905067ffffffffffffffff811115610b7357610b72610ae4565b5b602083019150836020820283011115610b8f57610b8e610ae8565b5b9250929050565b5f805f8060408587031215610bae57610bad610a25565b5b5f85013567ffffffffffffffff811115610bcb57610bca610a29565b5b610bd787828801610aec565b9450945050602085013567ffffffffffffffff811115610bfa57610bf9610a29565b5b610c0687828801610b41565b925092505092959194509250565b610c1d81610a2d565b82525050565b5f602082019050610c365f830184610c14565b92915050565b5f8083601f840112610c5157610c50610ae0565b5b8235905067ffffffffffffffff811115610c6e57610c6d610ae4565b5b602083019150836001820283011115610c8a57610c89610ae8565b5b9250929050565b5f8060208385031215610ca757610ca6610a25565b5b5f83013567ffffffffffffffff811115610cc457610cc3610a29565b5b610cd085828601610c3c565b92509250509250929050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610d0582610cdc565b9050919050565b610d1581610cfb565b82525050565b5f602082019050610d2e5f830184610d0c565b92915050565b610d3d81610cfb565b8114610d47575f80fd5b50565b5f81359050610d5881610d34565b92915050565b5f805f60408486031215610d7557610d74610a25565b5b5f610d8286828701610d4a565b935050602084013567ffffffffffffffff811115610da357610da2610a29565b5b610daf86828701610c3c565b92509250509250925092565b5f60208284031215610dd057610dcf610a25565b5b5f610ddd84828501610d4a565b91505092915050565b5f819050919050565b610df881610de6565b82525050565b5f602082019050610e115f830184610def565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b610e4d81610aad565b8114610e57575f80fd5b50565b5f81359050610e6881610e44565b92915050565b5f60208284031215610e8357610e82610a25565b5b5f610e9084828501610e5a565b91505092915050565b5f610ea382610cdc565b9050919050565b610eb381610e99565b8114610ebd575f80fd5b50565b5f81359050610ece81610eaa565b92915050565b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610f1a82610ed4565b810181811067ffffffffffffffff82111715610f3957610f38610ee4565b5b80604052505050565b5f610f4b610a1c565b9050610f578282610f11565b919050565b5f67ffffffffffffffff821115610f7657610f75610ee4565b5b602082029050602081019050919050565b5f610f99610f9484610f5c565b610f42565b90508083825260208201905060208402830185811115610fbc57610fbb610ae8565b5b835b81811015610fe55780610fd18882610d4a565b845260208401935050602081019050610fbe565b5050509392505050565b5f82601f83011261100357611002610ae0565b5b8135611013848260208601610f87565b91505092915050565b5f806040838503121561103257611031610a25565b5b5f61103f85828601610ec0565b925050602083013567ffffffffffffffff8111156110605761105f610a29565b5b61106c85828601610fef565b915050925092905056fea2646970667358221220f8901ba0ad91db050edba1d0412882eecda8dba26237dd3383d77357c2f7173964736f6c634300081a0033",t=class t extends l.DeployableTarget{constructor(){super(...arguments),this.abi=d.S}async isAllowed(b,a){return await d.A2(this._config,{address:this.assertValidAddress(),args:[b,o.zeroHash],...this.optionallyAttachAccount(),...a})}async setDenied(b,a,f){return this.awaitResult(this.setDeniedRaw(b,a,f))}async setDeniedRaw(b,a,f){const{request:e,result:c}=await d.k2(this._config,{address:this.assertValidAddress(),args:[b,a],...this.optionallyAttachAccount(),...f});return{hash:await d.B2(this._config,e),result:c}}buildParameters(b,a){var c;const[f,e]=this.validateDeploymentConfig(b,a);if(!f.owner||f.owner===o.zeroAddress){const s=e.account?e.account.address:e.config?n.getAccount(e.config).address:(c=this._account)==null?void 0:c.address;if(s)f.owner=s;else throw new u.DeployableUnknownOwnerProvidedError}return{abi:d.S,bytecode:h,args:[i.prepareSimpleDenyListPayload(f)],...this.optionallyAttachAccount(e.account)}}};t.base="0x41A7c1aCC75BEccD11B8F586510759883092460F",t.registryType=i.RegistryType.ALLOW_LIST;let r=t;exports.simpleDenyListAbi=d.S;exports.SimpleDenyList=r;
|
|
2
2
|
//# sourceMappingURL=SimpleDenyList.cjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { S as s, ac as o, ad as i, ae as n } from "../generated-
|
|
1
|
+
import { S as s, ac as o, ad as i, ae as n } from "../generated-Cbv8zFkf.js";
|
|
2
2
|
import { getAccount as h } from "@wagmi/core";
|
|
3
3
|
import { zeroHash as l, zeroAddress as p } from "viem";
|
|
4
4
|
import { DeployableTarget as u } from "../Deployable/DeployableTarget.js";
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("../generated-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("../generated-BzszviNp.cjs"),a=require("../Deployable/Deployable.cjs"),s="0x6080604052348015600e575f80fd5b506101598061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063fe9fbb801461002d575b5f80fd5b610047600480360381019061004291906100c5565b61005d565b604051610054919061010a565b60405180910390f35b5f60019050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100948261006b565b9050919050565b6100a48161008a565b81146100ae575f80fd5b50565b5f813590506100bf8161009b565b92915050565b5f602082840312156100da576100d9610067565b5b5f6100e7848285016100b1565b91505092915050565b5f8115159050919050565b610104816100f0565b82525050565b5f60208201905061011d5f8301846100fb565b9291505056fea2646970667358221220d69fb5c3af806c7aa7833655670f5929f23f7d101298880775d4b9c7c8d0e62f64736f6c634300081a0033";class d extends a.Deployable{constructor(){super(...arguments),this.abi=f.ze}async isAuthorized(b,e){return f.TA(this._config,{address:this.assertValidAddress(),args:[b],...e})}buildParameters(b,e){const[o,t]=this.validateDeploymentConfig({},e);return{abi:f.ze,bytecode:s,args:[],...this.optionallyAttachAccount(t.account)}}}exports.passthroughAuthAbi=f.ze;exports.PassthroughAuth=d;
|
|
2
2
|
//# sourceMappingURL=PassthroughAuth.cjs.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { z as a, j as t } from "../generated-
|
|
1
|
+
import { z as a, j as t } from "../generated-Cbv8zFkf.js";
|
|
2
2
|
import { Deployable as e } from "../Deployable/Deployable.js";
|
|
3
3
|
const d = "0x6080604052348015600e575f80fd5b506101598061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063fe9fbb801461002d575b5f80fd5b610047600480360381019061004291906100c5565b61005d565b604051610054919061010a565b60405180910390f35b5f60019050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6100948261006b565b9050919050565b6100a48161008a565b81146100ae575f80fd5b50565b5f813590506100bf8161009b565b92915050565b5f602082840312156100da576100d9610067565b5b5f6100e7848285016100b1565b91505092915050565b5f8115159050919050565b610104816100f0565b82525050565b5f60208201905061011d5f8301846100fb565b9291505056fea2646970667358221220d69fb5c3af806c7aa7833655670f5929f23f7d101298880775d4b9c7c8d0e62f64736f6c634300081a0033";
|
|
4
4
|
class n extends e {
|
package/dist/BoostCore.cjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./generated-Cd-Fe7W7.cjs"),D=require("@wagmi/core"),d=require("viem"),K=require("./Actions/Action.cjs"),Q=require("./Actions/EventAction.cjs"),X=require("./AllowLists/AllowList.cjs"),Y=require("./AllowLists/SimpleAllowList.cjs"),Z=require("./AllowLists/SimpleDenyList.cjs"),ff=require("./Auth/PassthroughAuth.cjs"),V=require("./Boost.cjs"),ef=require("./Budgets/Budget.cjs"),af=require("./Budgets/ManagedBudget.cjs"),bf=require("./Deployable/Deployable.cjs"),tf=require("./Incentives/AllowListIncentive.cjs"),sf=require("./Incentives/CGDAIncentive.cjs"),cf=require("./Incentives/ERC20Incentive.cjs"),H=require("./Incentives/Incentive.cjs"),nf=require("./Incentives/PointsIncentive.cjs"),df=require("./Validators/SignerValidator.cjs"),rf=require("./Validators/Validator.cjs"),C=require("./errors.cjs"),of=require("./utils.cjs"),N=require("viem/actions"),M=require("viem/utils"),uf="0x60806040526544364c5bb0006004556103e860055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506103e8600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555034801561006e575f80fd5b506040516135683803806135688339818101604052810190610090919061029f565b61009f3361012660201b60201c565b8160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506102dd565b61013461020260201b60201c565b156101ac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392780541561016e57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3506101ff565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f90565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102338261020a565b9050919050565b5f61024482610229565b9050919050565b6102548161023a565b811461025e575f80fd5b50565b5f8151905061026f8161024b565b92915050565b61027e81610229565b8114610288575f80fd5b50565b5f8151905061029981610275565b92915050565b5f80604083850312156102b5576102b4610206565b5b5f6102c285828601610261565b92505060206102d38582860161028b565b9150509250929050565b61327e806102ea5f395ff3fe60806040526004361061014a575f3560e01c8063892b97f8116100b5578063d73792a91161006e578063d73792a9146103d0578063e21ff731146103fa578063eccc19a614610436578063f04e283e1461045e578063f2fde38b1461047a578063fee81cf4146104965761014a565b8063892b97f8146102e45780638da5cb5b1461030c5780638fe4f5231461033657806399d32fc414610352578063a92647dc1461037c578063b0e21e8a146103a65761014a565b806354d1f13d1161010757806354d1f13d146102365780635edb9eb014610240578063715018a61461026a578063730f9c57146102745780637b1039991461029057806384ae2bc6146102ba5761014a565b806313c8e2de1461014e578063256929621461018a5780632e75ab501461019457806339a51be5146101bc57806343bc42d3146101e657806346877b1a1461020e575b5f80fd5b348015610159575f80fd5b50610174600480360381019061016f91906122d2565b6104d2565b60405161018191906125c3565b60405180910390f35b6101926107ac565b005b34801561019f575f80fd5b506101ba60048036038101906101b591906122d2565b6107fd565b005b3480156101c7575f80fd5b506101d061080f565b6040516101dd91906125f2565b60405180910390f35b3480156101f1575f80fd5b5061020c60048036038101906102079190612635565b610834565b005b348015610219575f80fd5b50610234600480360381019061022f919061268a565b610867565b005b61023e6108b2565b005b34801561024b575f80fd5b506102546108eb565b60405161026191906126c4565b60405180910390f35b6102726108f6565b005b61028e6004803603810190610289919061273e565b610909565b005b34801561029b575f80fd5b506102a4610b9a565b6040516102b191906127f4565b60405180910390f35b3480156102c5575f80fd5b506102ce610bbf565b6040516102db919061281c565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612635565b610bd9565b005b348015610317575f80fd5b50610320610c0d565b60405161032d91906125f2565b60405180910390f35b610350600480360381019061034b9190612835565b610c35565b005b34801561035d575f80fd5b50610366610c4a565b60405161037391906126c4565b60405180910390f35b348015610387575f80fd5b50610390610c50565b60405161039d91906128d9565b60405180910390f35b3480156103b1575f80fd5b506103ba610c75565b6040516103c7919061281c565b60405180910390f35b3480156103db575f80fd5b506103e4610c8e565b6040516103f1919061281c565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b91906128f2565b610c94565b60405161042d91906125c3565b60405180910390f35b348015610441575f80fd5b5061045c6004803603810190610457919061268a565b61164f565b005b6104786004803603810190610473919061268a565b61169a565b005b610494600480360381019061048f919061268a565b6116d8565b005b3480156104a1575f80fd5b506104bc60048036038101906104b7919061268a565b611701565b6040516104c991906126c4565b60405180910390f35b6104da612126565b5f82815481106104ed576104ec61293d565b5b905f5260205f209060080201604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156106da57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610691575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b5f6107b561171a565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b610805611724565b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61083c611724565b8060055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b61086f611724565b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f8080549050905090565b6108fe611724565b6109075f61175b565b565b3068929eee149b4bd2126854036109275763ab143c065f526004601cfd5b3068929eee149b4bd21268555f8087815481106109475761094661293d565b5b905f5260205f20906008020190506004543410156109a2575f346004546040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016109999392919061296a565b60405180910390fd5b6109ac8186611821565b806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663703b690088888588886040518663ffffffff1660e01b8152600401610a109594939291906129f9565b6020604051808303815f875af1158015610a2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a509190612a7a565b610a86576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806004018681548110610a9c57610a9b61293d565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb1757cf8386866040518463ffffffff1660e01b8152600401610b0093929190612aa5565b6020604051808303815f875af1158015610b1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b409190612a7a565b610b85578184846040517f4139d81d000000000000000000000000000000000000000000000000000000008152600401610b7c93929190612aa5565b60405180910390fd5b503868929eee149b4bd2126855505050505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560089054906101000a900467ffffffffffffffff1681565b610be1611724565b80600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610c43858585858533610909565b5050505050565b60045481565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900467ffffffffffffffff1681565b61271081565b610c9c612126565b335f73ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015610d90575060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80826040518263ffffffff1660e01b8152600401610d4f91906125f2565b602060405180830381865afa158015610d6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8e9190612a7a565b155b15610dc7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3068929eee149b4bd212685403610de55763ab143c065f526004601cfd5b3068929eee149b4bd21268555f610e3e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505061198f565b806020019051810190610e519190612f35565b9050610e5f815f0151611a28565b5f8060018160018154018082558091505003905f5260205f2090600802019050816101000151816007015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550815f0151816003015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160a0015160055f9054906101000a900467ffffffffffffffff16610f309190612fa9565b816005015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160c00151600560089054906101000a900467ffffffffffffffff16610f7f9190612fa9565b8160050160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160e001518160060181905550610fe67fe67157950000000000000000000000000000000000000000000000000000000083602001516001611b03565b815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110567fe2089f790000000000000000000000000000000000000000000000000000000083606001516001611b03565b816002015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110a88260800151835f0151611b25565b8160040190805190602001906110bf9291906121ec565b505f73ffffffffffffffffffffffffffffffffffffffff1682604001516020015173ffffffffffffffffffffffffffffffffffffffff16146111305761112b7f5912b89c0000000000000000000000000000000000000000000000000000000083604001516001611b03565b611219565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f5912b89c000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016111ab919061301e565b602060405180830381865afa1580156111c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ea9190612a7a565b6111f4575f611218565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b5b816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16816007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660015f805490506112de9190613037565b7f116812d3ad4507d72f2c428b63246d594ca055a1dc119394285504c23d1f34cd8460040180549050856001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866002015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876003015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611383949392919061306a565b60405180910390a480604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016004820180548060200260200160405190810160405280929190818152602001828054801561156d57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611524575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050935050503868929eee149b4bd21268555092915050565b611657611724565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6116a2611724565b63389a75e1600c52805f526020600c2080544211156116c857636f5e88185f526004601cfd5b5f8155506116d58161175b565b50565b6116e0611724565b8060601b6116f557637448fbae5f526004601cfd5b6116fe8161175b565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611759576382b429005f526004601cfd5b565b611763611eef565b156117c8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b821781555061181e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f600454031561198b575f60045490505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146118e7575f61271067ffffffffffffffff168460050160089054906101000a900467ffffffffffffffff1667ffffffffffffffff166004546118a291906130ad565b6118ac919061311b565b905080826118ba9190613037565b91506118e5818473ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b61193f6002826118f7919061311b565b846007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b6119894760035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b5050565b6060815115611a235760405190506020810160048301805184518501811983525b80861015611a09576001860195508551601f1a806119f9576001870196508651601f1a5f198652607f81116119e757600181013887395b6001607f821601860195505050611a04565b808553600185019450505b6119b0565b81835260208501840385525f845260208401604052505050505b919050565b611a527fea5ad34e0000000000000000000000000000000000000000000000000000000082611f10565b8073ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80336040518263ffffffff1660e01b8152600401611a8b91906125f2565b602060405180830381865afa158015611aa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aca9190612a7a565b611b00576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b5f611b12848460200151611f10565b611b1c8383612007565b90509392505050565b6060825167ffffffffffffffff811115611b4257611b41612ad9565b5b604051908082528060200260200182016040528015611b705781602001602082028036833780820191505090505b5090505f5b8351811015611ee857611bc67f5970a68900000000000000000000000000000000000000000000000000000000858381518110611bb557611bb461293d565b5b602002602001015160200151611f10565b838181518110611bd957611bd861293d565b5b60200260200101515f0151611c65577f5970a68900000000000000000000000000000000000000000000000000000000848281518110611c1c57611c1b61293d565b5b6020026020010151602001516040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611c5c92919061314b565b60405180910390fd5b611caa7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611c9c57611c9b61293d565b5b60200260200101515f611b03565b828281518110611cbd57611cbc61293d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f828281518110611d0b57611d0a61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16634e7165a2868481518110611d4157611d4061293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611d6991906131b4565b5f60405180830381865afa158015611d83573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611dab91906131d4565b90505f815114611e3c578373ffffffffffffffffffffffffffffffffffffffff1663fa4ca9b1826040518263ffffffff1660e01b8152600401611dee91906131b4565b6020604051808303815f875af1158015611e0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e2e9190612a7a565b611e3b57611e3a61321b565b5b5b828281518110611e4f57611e4e61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663439fab91868481518110611e8557611e8461293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611ead91906131b4565b5f604051808303815f87803b158015611ec4575f80fd5b505af1158015611ed6573d5f803e3d5ffd5b50505050508080600101915050611b75565b5092915050565b5f90565b5f385f3884865af1611f0c5763b12d13eb5f526004601cfd5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480611fbf57508073ffffffffffffffffffffffffffffffffffffffff166301ffc9a7836040518263ffffffff1660e01b8152600401611f7e919061301e565b602060405180830381865afa158015611f99573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fbd9190612a7a565b155b156120035781816040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611ffa92919061314b565b60405180910390fd5b5050565b5f825f015161201a57826020015161203e565b61203d836020015173ffffffffffffffffffffffffffffffffffffffff166120c3565b5b9050825f0151801561204d5750815b156120bd578073ffffffffffffffffffffffffffffffffffffffff1663439fab9184604001516040518263ffffffff1660e01b815260040161208f91906131b4565b5f604051808303815f87803b1580156120a6575f80fd5b505af11580156120b8573d5f803e3d5ffd5b505050505b92915050565b5f6120ce5f836120d5565b9050919050565b5f6c5af43d3d93803e602a57fd5bf36021528160145273602c3d8160093d39f33d3d3d3d363d3d37363d735f526035600c84f090508061211c5763301164255f526004601cfd5b5f60215292915050565b6040518061012001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f67ffffffffffffffff1681526020015f67ffffffffffffffff1681526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b828054828255905f5260205f20908101928215612262579160200282015b82811115612261578251825f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061220a565b5b50905061226f9190612273565b5090565b5b8082111561228a575f815f905550600101612274565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6122b18161229f565b81146122bb575f80fd5b50565b5f813590506122cc816122a8565b92915050565b5f602082840312156122e7576122e6612297565b5b5f6122f4848285016122be565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61233f61233a612335846122fd565b61231c565b6122fd565b9050919050565b5f61235082612325565b9050919050565b5f61236182612346565b9050919050565b61237181612357565b82525050565b5f61238182612346565b9050919050565b61239181612377565b82525050565b5f6123a182612346565b9050919050565b6123b181612397565b82525050565b5f6123c182612325565b9050919050565b5f6123d2826123b7565b9050919050565b6123e2816123c8565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61241b82612346565b9050919050565b61242b81612411565b82525050565b5f61243c8383612422565b60208301905092915050565b5f602082019050919050565b5f61245e826123e8565b61246881856123f2565b935061247383612402565b805f5b838110156124a357815161248a8882612431565b975061249583612448565b925050600181019050612476565b5085935050505092915050565b5f67ffffffffffffffff82169050919050565b6124cc816124b0565b82525050565b6124db8161229f565b82525050565b5f6124eb826122fd565b9050919050565b6124fb816124e1565b82525050565b5f61012083015f8301516125175f860182612368565b50602083015161252a6020860182612388565b50604083015161253d60408601826123a8565b50606083015161255060608601826123d9565b50608083015184820360808601526125688282612454565b91505060a083015161257d60a08601826124c3565b5060c083015161259060c08601826124c3565b5060e08301516125a360e08601826124d2565b506101008301516125b86101008601826124f2565b508091505092915050565b5f6020820190508181035f8301526125db8184612501565b905092915050565b6125ec816124e1565b82525050565b5f6020820190506126055f8301846125e3565b92915050565b612614816124b0565b811461261e575f80fd5b50565b5f8135905061262f8161260b565b92915050565b5f6020828403121561264a57612649612297565b5b5f61265784828501612621565b91505092915050565b612669816124e1565b8114612673575f80fd5b50565b5f8135905061268481612660565b92915050565b5f6020828403121561269f5761269e612297565b5b5f6126ac84828501612676565b91505092915050565b6126be8161229f565b82525050565b5f6020820190506126d75f8301846126b5565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126126fe576126fd6126dd565b5b8235905067ffffffffffffffff81111561271b5761271a6126e1565b5b602083019150836001820283011115612737576127366126e5565b5b9250929050565b5f805f805f8060a0878903121561275857612757612297565b5b5f61276589828a016122be565b965050602061277689828a016122be565b955050604061278789828a01612676565b945050606087013567ffffffffffffffff8111156127a8576127a761229b565b5b6127b489828a016126e9565b935093505060806127c789828a01612676565b9150509295509295509295565b5f6127de82612346565b9050919050565b6127ee816127d4565b82525050565b5f6020820190506128075f8301846127e5565b92915050565b612816816124b0565b82525050565b5f60208201905061282f5f83018461280d565b92915050565b5f805f805f6080868803121561284e5761284d612297565b5b5f61285b888289016122be565b955050602061286c888289016122be565b945050604061287d88828901612676565b935050606086013567ffffffffffffffff81111561289e5761289d61229b565b5b6128aa888289016126e9565b92509250509295509295909350565b5f6128c382612346565b9050919050565b6128d3816128b9565b82525050565b5f6020820190506128ec5f8301846128ca565b92915050565b5f806020838503121561290857612907612297565b5b5f83013567ffffffffffffffff8111156129255761292461229b565b5b612931858286016126e9565b92509250509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60608201905061297d5f8301866125e3565b61298a60208301856126b5565b61299760408301846126b5565b949350505050565b5f82825260208201905092915050565b828183375f83830152505050565b5f601f19601f8301169050919050565b5f6129d8838561299f565b93506129e58385846129af565b6129ee836129bd565b840190509392505050565b5f608082019050612a0c5f8301886126b5565b612a1960208301876126b5565b612a2660408301866125e3565b8181036060830152612a398184866129cd565b90509695505050505050565b5f8115159050919050565b612a5981612a45565b8114612a63575f80fd5b50565b5f81519050612a7481612a50565b92915050565b5f60208284031215612a8f57612a8e612297565b5b5f612a9c84828501612a66565b91505092915050565b5f604082019050612ab85f8301866125e3565b8181036020830152612acb8184866129cd565b9050949350505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b0f826129bd565b810181811067ffffffffffffffff82111715612b2e57612b2d612ad9565b5b80604052505050565b5f612b4061228e565b9050612b4c8282612b06565b919050565b5f80fd5b5f612b5f826122fd565b9050919050565b5f612b7082612b55565b9050919050565b612b8081612b66565b8114612b8a575f80fd5b50565b5f81519050612b9b81612b77565b92915050565b5f81519050612baf81612660565b92915050565b5f80fd5b5f67ffffffffffffffff821115612bd357612bd2612ad9565b5b612bdc826129bd565b9050602081019050919050565b8281835e5f83830152505050565b5f612c09612c0484612bb9565b612b37565b905082815260208101848484011115612c2557612c24612bb5565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b6126dd565b5b8151612c5c848260208601612bf7565b91505092915050565b5f60608284031215612c7a57612c79612ad5565b5b612c846060612b37565b90505f612c9384828501612a66565b5f830152506020612ca684828501612ba1565b602083015250604082015167ffffffffffffffff811115612cca57612cc9612b51565b5b612cd684828501612c38565b60408301525092915050565b5f67ffffffffffffffff821115612cfc57612cfb612ad9565b5b602082029050602081019050919050565b5f612d1f612d1a84612ce2565b612b37565b90508083825260208201905060208402830185811115612d4257612d416126e5565b5b835b81811015612d8957805167ffffffffffffffff811115612d6757612d666126dd565b5b808601612d748982612c65565b85526020850194505050602081019050612d44565b5050509392505050565b5f82601f830112612da757612da66126dd565b5b8151612db7848260208601612d0d565b91505092915050565b5f81519050612dce8161260b565b92915050565b5f81519050612de2816122a8565b92915050565b5f6101208284031215612dfe57612dfd612ad5565b5b612e09610120612b37565b90505f612e1884828501612b8d565b5f83015250602082015167ffffffffffffffff811115612e3b57612e3a612b51565b5b612e4784828501612c65565b602083015250604082015167ffffffffffffffff811115612e6b57612e6a612b51565b5b612e7784828501612c65565b604083015250606082015167ffffffffffffffff811115612e9b57612e9a612b51565b5b612ea784828501612c65565b606083015250608082015167ffffffffffffffff811115612ecb57612eca612b51565b5b612ed784828501612d93565b60808301525060a0612eeb84828501612dc0565b60a08301525060c0612eff84828501612dc0565b60c08301525060e0612f1384828501612dd4565b60e083015250610100612f2884828501612ba1565b6101008301525092915050565b5f60208284031215612f4a57612f49612297565b5b5f82015167ffffffffffffffff811115612f6757612f6661229b565b5b612f7384828501612de8565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612fb3826124b0565b9150612fbe836124b0565b9250828201905067ffffffffffffffff811115612fde57612fdd612f7c565b5b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61301881612fe4565b82525050565b5f6020820190506130315f83018461300f565b92915050565b5f6130418261229f565b915061304c8361229f565b925082820390508181111561306457613063612f7c565b5b92915050565b5f60808201905061307d5f8301876126b5565b61308a60208301866125e3565b61309760408301856125e3565b6130a460608301846125e3565b95945050505050565b5f6130b78261229f565b91506130c28361229f565b92508282026130d08161229f565b915082820484148315176130e7576130e6612f7c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131258261229f565b91506131308361229f565b9250826131405761313f6130ee565b5b828204905092915050565b5f60408201905061315e5f83018561300f565b61316b60208301846125e3565b9392505050565b5f81519050919050565b5f61318682613172565b613190818561299f565b93506131a0818560208601612be9565b6131a9816129bd565b840191505092915050565b5f6020820190508181035f8301526131cc818461317c565b905092915050565b5f602082840312156131e9576131e8612297565b5b5f82015167ffffffffffffffff8111156132065761320561229b565b5b61321284828501612c38565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffdfea2646970667358221220fb22934e0d9f7a8e32d07cd1f2621ea36204627afface45e5bc80aab6122bb7d64736f6c634300081a0033";function x(b){const e=b.state.current,f=b.state.connections.get(e),a=f==null?void 0:f.accounts,s=a==null?void 0:a[0],t=b.chains.find(r=>r.id===(f==null?void 0:f.chainId)),c=b.state.status;switch(c){case"connected":return{address:s,addresses:a,chain:t,chainId:f==null?void 0:f.chainId,connector:f==null?void 0:f.connector,isConnected:!0,isConnecting:!1,isDisconnected:!1,isReconnecting:!1,status:c};case"reconnecting":return{address:s,addresses:a,chain:t,chainId:f==null?void 0:f.chainId,connector:f==null?void 0:f.connector,isConnected:!!s,isConnecting:!1,isDisconnected:!1,isReconnecting:!0,status:c};case"connecting":return{address:s,addresses:a,chain:t,chainId:f==null?void 0:f.chainId,connector:f==null?void 0:f.connector,isConnected:!1,isConnecting:!0,isDisconnected:!1,isReconnecting:!1,status:c};case"disconnected":return{address:void 0,addresses:void 0,chain:void 0,chainId:void 0,connector:void 0,isConnected:!1,isConnecting:!1,isDisconnected:!0,isReconnecting:!1,status:c}}}function lf(b){return b.state.chainId}function $(b,e,f){const a=b[e.name];if(typeof a=="function")return a;const s=b[f];return typeof s=="function"?s:t=>e(b,t)}const hf="2.13.0",gf=()=>`@wagmi/core@${hf}`;var j=function(b,e,f,a){if(f==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?b!==e||!a:!e.has(b))throw new TypeError("Cannot read private member from an object whose class did not declare it");return f==="m"?a:f==="a"?a.call(b):a?a.value:e.get(b)},R,T;class y extends Error{get docsBaseUrl(){return"https://wagmi.sh/core"}get version(){return gf()}constructor(e,f={}){var t;super(),R.add(this),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"WagmiCoreError"});const a=f.cause instanceof y?f.cause.details:(t=f.cause)!=null&&t.message?f.cause.message:f.details,s=f.cause instanceof y&&f.cause.docsPath||f.docsPath;this.message=[e||"An error occurred.","",...f.metaMessages?[...f.metaMessages,""]:[],...s?[`Docs: ${this.docsBaseUrl}${s}.html${f.docsSlug?`#${f.docsSlug}`:""}`]:[],...a?[`Details: ${a}`]:[],`Version: ${this.version}`].join(`
|
|
2
|
-
`),f.cause&&(this.cause=f.cause),this.details=a,this.docsPath=s,this.metaMessages=f.metaMessages,this.shortMessage=e}walk(e){return j(this,R,"m",T).call(this,this,e)}}R=new WeakSet,T=function b(e,f){return f!=null&&f(e)?e:e.cause?j(this,R,"m",b).call(this,e.cause,f):e};class wf extends y{constructor(){super("Connector not connected."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorNotConnectedError"})}}class mf extends y{constructor({address:e,connector:f}){super(`Account "${e}" not found for connector "${f.name}".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorAccountNotFoundError"})}}class Af extends y{constructor({connectionChainId:e,connectorChainId:f}){super(`The current chain of the connector (id: ${f}) does not match the connection's chain (id: ${e}).`,{metaMessages:[`Current Chain ID: ${f}`,`Expected Chain ID: ${e}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorChainMismatchError"})}}async function G(b,e={}){let f;if(e.connector){const{connector:n}=e,[h,m]=await Promise.all([n.getAccounts(),n.getChainId()]);f={accounts:h,chainId:m,connector:n}}else f=b.state.connections.get(b.state.current);if(!f)throw new wf;const a=e.chainId??f.chainId,s=await f.connector.getChainId();if(s!==f.chainId)throw new Af({connectionChainId:f.chainId,connectorChainId:s});const t=f.connector;if(t.getClient)return t.getClient({chainId:a});const c=M.parseAccount(e.account??f.accounts[0]);c.address=M.getAddress(c.address);const r=b.chains.find(n=>n.id===a),o=await f.connector.getProvider({chainId:a});if(e.account&&!f.accounts.some(n=>n.toLowerCase()===c.address.toLowerCase()))throw new mf({address:c.address,connector:t});return d.createClient({account:c,chain:r,name:"Connector Client",transport:n=>d.custom(o)({...n,retryCount:0})})}async function yf(b,e){const{abi:f,chainId:a,connector:s,...t}=e;let c;e.account?c=e.account:c=(await G(b,{chainId:a,connector:s})).account;const r=b.getClient({chainId:a}),o=$(r,N.simulateContract,"simulateContract"),{result:n,request:h}=await o({...t,abi:f,account:c});return{chainId:r.chain.id,result:n,request:{__mode:"prepared",...h,chainId:a}}}async function O(b,e){const{account:f,chainId:a,connector:s,__mode:t,...c}=e;let r;typeof f=="object"&&f.type==="local"?r=b.getClient({chainId:a}):r=await G(b,{account:f,chainId:a,connector:s});const{connector:o}=x(b);let n;if(t==="prepared"||o!=null&&o.supportsSimulation)n=c;else{const{request:v}=await yf(b,{...c,account:f,chainId:a});n=v}return await $(r,N.writeContract,"writeContract")({...n,...f?{account:f}:{},chain:a?{id:a}:null})}function vf(b){return b.address!==void 0&&typeof b.address=="object"?(e,f)=>{var c;const a=lf(e),s=x(e);let t;return f.chainId?t=f.chainId:f.account&&f.account===s.address||f.account===void 0?t=s.chainId:t=a,O(e,{...f,...b.functionName?{functionName:b.functionName}:{},address:t?(c=b.address)==null?void 0:c[t]:void 0,abi:b.abi})}:(e,f)=>O(e,{...f,...b.address?{address:b.address}:{},...b.functionName?{functionName:b.functionName}:{},abi:b.abi})}const U="0xF4905b327904E5797840fd8cD7F300001a34122f";function Cf(b){return b.address}function pf(b){return b.registryAddress&&b.protocolFeeReceiver}class _f extends bf.Deployable{constructor({config:e,account:f,...a}){Cf(a)&&a.address?super({account:f,config:e},a.address):pf(a)?super({account:f,config:e},[a.registryAddress,a.protocolFeeReceiver]):super({account:f,config:e},U),this.abi=i.c}async createBoost(e,f){var S,L;const a=this.assertValidAddress(),[s,t]=this.validateDeploymentConfig(e,f);let{budget:c,action:r,validator:o,allowList:n,incentives:h,protocolFee:m=0n,referralFee:v=0n,maxParticipants:q=0n,owner:w}=s;const F=vf({abi:i.c,functionName:"createBoost",address:this.address});if(!w&&(w=((S=this._account)==null?void 0:S.address)||D.getAccount(t.config).address||d.zeroAddress,w===d.zeroAddress))throw new C.DeployableUnknownOwnerProvidedError;let E=d.zeroAddress;if(c.address){if(E=c.address,!await c.isAuthorized(a))throw new C.BudgetMustAuthorizeBoostCore(a)}else{if(!(((L=c.payload)==null?void 0:L.authorized)||[]).includes(a))throw new C.BudgetMustAuthorizeBoostCore(a);const l=await c.deployRaw(void 0,t),A=await D.waitForTransactionReceipt(t.config,{hash:l});if(!A.contractAddress)throw new C.NoContractAddressUponReceiptError(A);E=A.contractAddress}let p={instance:d.zeroAddress,isBase:!0,parameters:d.zeroHash};if(r.address){const u=r.address===r.base||r.isBase;p={isBase:u,instance:r.address,parameters:u&&r.buildParameters(void 0,t).args.at(0)||d.zeroHash}}else p.parameters=r.buildParameters(void 0,t).args.at(0)||d.zeroHash,p.instance=r.base;let _={instance:d.zeroAddress,isBase:!0,parameters:d.zeroHash};if(o.address){const u=o.address===o.base||o.isBase;_={isBase:u,instance:o.address,parameters:u&&o.buildParameters({signers:[w],validatorCaller:a},t).args.at(0)||d.zeroHash}}else _.parameters=o.buildParameters({signers:[w],validatorCaller:a},t).args.at(0)||d.zeroHash,_.instance=o.base;let P={instance:d.zeroAddress,isBase:!0,parameters:d.zeroHash};if(n.address){const u=n.address===n.base||n.isBase;P={isBase:u,instance:n.address,parameters:d.zeroHash}}else P.parameters=n.buildParameters(void 0,t).args.at(0)||d.zeroHash,P.instance=n.base;let I=h.map(()=>({instance:d.zeroAddress,isBase:!0,parameters:d.zeroHash}));for(let u=0;u<h.length;u++){const l=h.at(u);if(l.address){const A=l.address===l.base||l.isBase;I[u]={isBase:A,instance:l.address,parameters:A&&l.buildParameters(void 0,t).args.at(0)||d.zeroHash}}else I[u].parameters=l.buildParameters(void 0,t).args.at(0)||d.zeroHash,I[u].instance=l.base}const W={budget:E,action:p,validator:_,allowList:P,incentives:I,protocolFee:m,referralFee:v,maxParticipants:q,owner:w},k=await F(t.config,{args:[of.prepareBoostPayload(W)],...this.optionallyAttachAccount(t.account)}),J=await D.waitForTransactionReceipt(t.config,{hash:k}),B=d.parseEventLogs({abi:i.c,eventName:"BoostCreated",logs:J.logs}).at(0);let z=0n;if(!B)throw new C.BoostCoreNoIdentifierEmitted;z=B==null?void 0:B.args.boostIndex;const g=await this.readBoost(z);return new V.Boost({id:z,budget:c.at(g.budget),action:r.at(g.action),validator:o.at(g.validator),allowList:n.at(g.allowList),incentives:h.map((u,l)=>u.at(g.incentives.at(l))),protocolFee:g.protocolFee,referralFee:g.referralFee,maxParticipants:g.maxParticipants,owner:g.owner})}async claimIncentive(e,f,a,s,t){return this.awaitResult(this.claimIncentiveRaw(e,f,a,s,t))}async claimIncentiveRaw(e,f,a,s,t){const{request:c,result:r}=await i.Wl(this._config,{address:this.assertValidAddress(),args:[e,f,a,s],...this.optionallyAttachAccount(),...t});return{hash:await i.Hl(this._config,c),result:r}}async readBoost(e,f){return i.gl(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f})}async getBoost(e,f){let a;typeof e=="string"?a=BigInt(e):a=e;const{protocolFee:s,referralFee:t,maxParticipants:c,owner:r,...o}=await this.readBoost(a,f),n={config:this._config,account:this._account},[h,m,v,q,w]=await Promise.all([K.actionFromAddress(n,o.action),ef.budgetFromAddress(n,o.budget),rf.validatorFromAddress(n,o.validator),X.allowListFromAddress(n,o.allowList),Promise.all(o.incentives.map(F=>H.incentiveFromAddress(n,F)))]);return new V.Boost({id:a,action:h,budget:m,validator:v,allowList:q,incentives:w,protocolFee:s,referralFee:t,maxParticipants:c,owner:r})}async getBoostCount(e){return i.Ml(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async isAuthorized(e,f){const a=await this.createBoostAuth();return i.pv(this._config,{address:a,args:[e],...this.optionallyAttachAccount(),...f})}async createBoostAuth(e){return i.hl(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async setCreateBoostAuth(e,f){return this.awaitResult(this.setCreateBoostAuthRaw(e.assertValidAddress(),{...f}))}async setCreateBoostAuthRaw(e,f){const{request:a,result:s}=await i.ty(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f});return{hash:await i.Pl(this._config,a),result:s}}async protocolFee(e){return i.El(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async protocolFeeReceiver(e){return i.Rl(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async setProcolFeeReceiver(e,f){return this.awaitResult(this.setProcolFeeReceiverRaw(e,{...f}))}async setProcolFeeReceiverRaw(e,f){const{request:a,result:s}=await i.ay(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f});return{hash:await i.Ul(this._config,a),result:s}}async claimFee(e){return i.Nl(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async setClaimFee(e,f){return this.awaitResult(this.setClaimFeeRaw(e,f))}async setClaimFeeRaw(e,f){const{request:a,result:s}=await i.ey(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f});return{hash:await i.Dl(this._config,a),result:s}}PassthroughAuth(e){return new ff.PassthroughAuth({config:this._config,account:this._account},e)}EventAction(e,f){return new Q.EventAction({config:this._config,account:this._account},e,f)}SimpleAllowList(e,f){return new Y.SimpleAllowList({config:this._config,account:this._account},e,f)}SimpleDenyList(e,f){return new Z.SimpleDenyList({config:this._config,account:this._account},e,f)}ManagedBudget(e){return new af.ManagedBudget({config:this._config,account:this._account},e)}AllowListIncentive(e){return new tf.AllowListIncentive({config:this._config,account:this._account},e)}CGDAIncentive(e){return new sf.CGDAIncentive({config:this._config,account:this._account},e)}ERC20Incentive(e){return new cf.ERC20Incentive({config:this._config,account:this._account},e)}PointsIncentive(e){return new nf.PointsIncentive({config:this._config,account:this._account},e)}SignerValidator(e,f){return new df.SignerValidator({config:this._config,account:this._account},e,f)}ERC20VariableIncentive(e,f){return new H.ERC20VariableIncentive({config:this._config,account:this._account},e,f)}buildParameters(e,f){const[a,s]=this.validateDeploymentConfig(e,f);return{abi:i.c,bytecode:uf,args:a,...this.optionallyAttachAccount(s.account)}}}exports.boostCoreAbi=i.c;exports.BOOST_CORE_ADDRESS=U;exports.BoostCore=_f;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./generated-BzszviNp.cjs"),V=require("@wagmi/core"),i=require("viem"),Q=require("./Actions/Action.cjs"),J=require("./Actions/EventAction.cjs"),K=require("./AllowLists/AllowList.cjs"),X=require("./AllowLists/SimpleAllowList.cjs"),Y=require("./AllowLists/SimpleDenyList.cjs"),Z=require("./Auth/PassthroughAuth.cjs"),S=require("./Boost.cjs"),ff=require("./Budgets/Budget.cjs"),ef=require("./Budgets/ManagedBudget.cjs"),af=require("./Deployable/Deployable.cjs"),bf=require("./Incentives/AllowListIncentive.cjs"),tf=require("./Incentives/CGDAIncentive.cjs"),sf=require("./Incentives/ERC20Incentive.cjs"),L=require("./Incentives/Incentive.cjs"),cf=require("./Incentives/PointsIncentive.cjs"),nf=require("./Validators/SignerValidator.cjs"),rf=require("./Validators/Validator.cjs"),y=require("./errors.cjs"),df=require("./utils.cjs"),O=require("viem/actions"),H=require("viem/utils"),of="0x60806040526544364c5bb0006004556103e860055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506103e8600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555034801561006e575f80fd5b506040516135683803806135688339818101604052810190610090919061029f565b61009f3361012660201b60201c565b8160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050506102dd565b61013461020260201b60201c565b156101ac577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392780541561016e57630dc149f05f526004601cfd5b8160601b60601c9150811560ff1b82178155815f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3506101ff565b8060601b60601c9050807fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392755805f7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a35b50565b5f90565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102338261020a565b9050919050565b5f61024482610229565b9050919050565b6102548161023a565b811461025e575f80fd5b50565b5f8151905061026f8161024b565b92915050565b61027e81610229565b8114610288575f80fd5b50565b5f8151905061029981610275565b92915050565b5f80604083850312156102b5576102b4610206565b5b5f6102c285828601610261565b92505060206102d38582860161028b565b9150509250929050565b61327e806102ea5f395ff3fe60806040526004361061014a575f3560e01c8063892b97f8116100b5578063d73792a91161006e578063d73792a9146103d0578063e21ff731146103fa578063eccc19a614610436578063f04e283e1461045e578063f2fde38b1461047a578063fee81cf4146104965761014a565b8063892b97f8146102e45780638da5cb5b1461030c5780638fe4f5231461033657806399d32fc414610352578063a92647dc1461037c578063b0e21e8a146103a65761014a565b806354d1f13d1161010757806354d1f13d146102365780635edb9eb014610240578063715018a61461026a578063730f9c57146102745780637b1039991461029057806384ae2bc6146102ba5761014a565b806313c8e2de1461014e578063256929621461018a5780632e75ab501461019457806339a51be5146101bc57806343bc42d3146101e657806346877b1a1461020e575b5f80fd5b348015610159575f80fd5b50610174600480360381019061016f91906122d2565b6104d2565b60405161018191906125c3565b60405180910390f35b6101926107ac565b005b34801561019f575f80fd5b506101ba60048036038101906101b591906122d2565b6107fd565b005b3480156101c7575f80fd5b506101d061080f565b6040516101dd91906125f2565b60405180910390f35b3480156101f1575f80fd5b5061020c60048036038101906102079190612635565b610834565b005b348015610219575f80fd5b50610234600480360381019061022f919061268a565b610867565b005b61023e6108b2565b005b34801561024b575f80fd5b506102546108eb565b60405161026191906126c4565b60405180910390f35b6102726108f6565b005b61028e6004803603810190610289919061273e565b610909565b005b34801561029b575f80fd5b506102a4610b9a565b6040516102b191906127f4565b60405180910390f35b3480156102c5575f80fd5b506102ce610bbf565b6040516102db919061281c565b60405180910390f35b3480156102ef575f80fd5b5061030a60048036038101906103059190612635565b610bd9565b005b348015610317575f80fd5b50610320610c0d565b60405161032d91906125f2565b60405180910390f35b610350600480360381019061034b9190612835565b610c35565b005b34801561035d575f80fd5b50610366610c4a565b60405161037391906126c4565b60405180910390f35b348015610387575f80fd5b50610390610c50565b60405161039d91906128d9565b60405180910390f35b3480156103b1575f80fd5b506103ba610c75565b6040516103c7919061281c565b60405180910390f35b3480156103db575f80fd5b506103e4610c8e565b6040516103f1919061281c565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b91906128f2565b610c94565b60405161042d91906125c3565b60405180910390f35b348015610441575f80fd5b5061045c6004803603810190610457919061268a565b61164f565b005b6104786004803603810190610473919061268a565b61169a565b005b610494600480360381019061048f919061268a565b6116d8565b005b3480156104a1575f80fd5b506104bc60048036038101906104b7919061268a565b611701565b6040516104c991906126c4565b60405180910390f35b6104da612126565b5f82815481106104ed576104ec61293d565b5b905f5260205f209060080201604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600482018054806020026020016040519081016040528092919081815260200182805480156106da57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610691575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b5f6107b561171a565b67ffffffffffffffff164201905063389a75e1600c52335f52806020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d5f80a250565b610805611724565b8060048190555050565b60035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61083c611724565b8060055f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b61086f611724565b8060035f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b63389a75e1600c52335f525f6020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c925f80a2565b5f8080549050905090565b6108fe611724565b6109075f61175b565b565b3068929eee149b4bd2126854036109275763ab143c065f526004601cfd5b3068929eee149b4bd21268555f8087815481106109475761094661293d565b5b905f5260205f20906008020190506004543410156109a2575f346004546040517f5c54305e0000000000000000000000000000000000000000000000000000000081526004016109999392919061296a565b60405180910390fd5b6109ac8186611821565b806001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663703b690088888588886040518663ffffffff1660e01b8152600401610a109594939291906129f9565b6020604051808303815f875af1158015610a2c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a509190612a7a565b610a86576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806004018681548110610a9c57610a9b61293d565b5b905f5260205f20015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb1757cf8386866040518463ffffffff1660e01b8152600401610b0093929190612aa5565b6020604051808303815f875af1158015610b1c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b409190612a7a565b610b85578184846040517f4139d81d000000000000000000000000000000000000000000000000000000008152600401610b7c93929190612aa5565b60405180910390fd5b503868929eee149b4bd2126855505050505050565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560089054906101000a900467ffffffffffffffff1681565b610be1611724565b80600560086101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff7487392754905090565b610c43858585858533610909565b5050505050565b60045481565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60055f9054906101000a900467ffffffffffffffff1681565b61271081565b610c9c612126565b335f73ffffffffffffffffffffffffffffffffffffffff1660025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614158015610d90575060025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80826040518263ffffffff1660e01b8152600401610d4f91906125f2565b602060405180830381865afa158015610d6a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8e9190612a7a565b155b15610dc7576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3068929eee149b4bd212685403610de55763ab143c065f526004601cfd5b3068929eee149b4bd21268555f610e3e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f8201169050808301925050505050505061198f565b806020019051810190610e519190612f35565b9050610e5f815f0151611a28565b5f8060018160018154018082558091505003905f5260205f2090600802019050816101000151816007015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550815f0151816003015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160a0015160055f9054906101000a900467ffffffffffffffff16610f309190612fa9565b816005015f6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160c00151600560089054906101000a900467ffffffffffffffff16610f7f9190612fa9565b8160050160086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508160e001518160060181905550610fe67fe67157950000000000000000000000000000000000000000000000000000000083602001516001611b03565b815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110567fe2089f790000000000000000000000000000000000000000000000000000000083606001516001611b03565b816002015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506110a88260800151835f0151611b25565b8160040190805190602001906110bf9291906121ec565b505f73ffffffffffffffffffffffffffffffffffffffff1682604001516020015173ffffffffffffffffffffffffffffffffffffffff16146111305761112b7f5912b89c0000000000000000000000000000000000000000000000000000000083604001516001611b03565b611219565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166301ffc9a77f5912b89c000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016111ab919061301e565b602060405180830381865afa1580156111c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111ea9190612a7a565b6111f4575f611218565b805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff165b5b816001015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550805f015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16816007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660015f805490506112de9190613037565b7f116812d3ad4507d72f2c428b63246d594ca055a1dc119394285504c23d1f34cd8460040180549050856001015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866002015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16876003015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051611383949392919061306a565b60405180910390a480604051806101200160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600282015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600382015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016004820180548060200260200160405190810160405280929190818152602001828054801561156d57602002820191905f5260205f20905b815f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611524575b50505050508152602001600582015f9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016005820160089054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160068201548152602001600782015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050935050503868929eee149b4bd21268555092915050565b611657611724565b8060025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6116a2611724565b63389a75e1600c52805f526020600c2080544211156116c857636f5e88185f526004601cfd5b5f8155506116d58161175b565b50565b6116e0611724565b8060601b6116f557637448fbae5f526004601cfd5b6116fe8161175b565b50565b5f63389a75e1600c52815f526020600c20549050919050565b5f6202a300905090565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff74873927543314611759576382b429005f526004601cfd5b565b611763611eef565b156117c8577fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3811560ff1b821781555061181e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff748739278160601b60601c91508181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3818155505b50565b5f600454031561198b575f60045490505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146118e7575f61271067ffffffffffffffff168460050160089054906101000a900467ffffffffffffffff1667ffffffffffffffff166004546118a291906130ad565b6118ac919061311b565b905080826118ba9190613037565b91506118e5818473ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b61193f6002826118f7919061311b565b846007015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b6119894760035f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611ef390919063ffffffff16565b505b5050565b6060815115611a235760405190506020810160048301805184518501811983525b80861015611a09576001860195508551601f1a806119f9576001870196508651601f1a5f198652607f81116119e757600181013887395b6001607f821601860195505050611a04565b808553600185019450505b6119b0565b81835260208501840385525f845260208401604052505050505b919050565b611a527fea5ad34e0000000000000000000000000000000000000000000000000000000082611f10565b8073ffffffffffffffffffffffffffffffffffffffff1663fe9fbb80336040518263ffffffff1660e01b8152600401611a8b91906125f2565b602060405180830381865afa158015611aa6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aca9190612a7a565b611b00576040517f82b4290000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b5f611b12848460200151611f10565b611b1c8383612007565b90509392505050565b6060825167ffffffffffffffff811115611b4257611b41612ad9565b5b604051908082528060200260200182016040528015611b705781602001602082028036833780820191505090505b5090505f5b8351811015611ee857611bc67f5970a68900000000000000000000000000000000000000000000000000000000858381518110611bb557611bb461293d565b5b602002602001015160200151611f10565b838181518110611bd957611bd861293d565b5b60200260200101515f0151611c65577f5970a68900000000000000000000000000000000000000000000000000000000848281518110611c1c57611c1b61293d565b5b6020026020010151602001516040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611c5c92919061314b565b60405180910390fd5b611caa7f5970a68900000000000000000000000000000000000000000000000000000000858381518110611c9c57611c9b61293d565b5b60200260200101515f611b03565b828281518110611cbd57611cbc61293d565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f828281518110611d0b57611d0a61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16634e7165a2868481518110611d4157611d4061293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611d6991906131b4565b5f60405180830381865afa158015611d83573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f82011682018060405250810190611dab91906131d4565b90505f815114611e3c578373ffffffffffffffffffffffffffffffffffffffff1663fa4ca9b1826040518263ffffffff1660e01b8152600401611dee91906131b4565b6020604051808303815f875af1158015611e0a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e2e9190612a7a565b611e3b57611e3a61321b565b5b5b828281518110611e4f57611e4e61293d565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1663439fab91868481518110611e8557611e8461293d565b5b6020026020010151604001516040518263ffffffff1660e01b8152600401611ead91906131b4565b5f604051808303815f87803b158015611ec4575f80fd5b505af1158015611ed6573d5f803e3d5ffd5b50505050508080600101915050611b75565b5092915050565b5f90565b5f385f3884865af1611f0c5763b12d13eb5f526004601cfd5b5050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161480611fbf57508073ffffffffffffffffffffffffffffffffffffffff166301ffc9a7836040518263ffffffff1660e01b8152600401611f7e919061301e565b602060405180830381865afa158015611f99573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fbd9190612a7a565b155b156120035781816040517fe1c44448000000000000000000000000000000000000000000000000000000008152600401611ffa92919061314b565b60405180910390fd5b5050565b5f825f015161201a57826020015161203e565b61203d836020015173ffffffffffffffffffffffffffffffffffffffff166120c3565b5b9050825f0151801561204d5750815b156120bd578073ffffffffffffffffffffffffffffffffffffffff1663439fab9184604001516040518263ffffffff1660e01b815260040161208f91906131b4565b5f604051808303815f87803b1580156120a6575f80fd5b505af11580156120b8573d5f803e3d5ffd5b505050505b92915050565b5f6120ce5f836120d5565b9050919050565b5f6c5af43d3d93803e602a57fd5bf36021528160145273602c3d8160093d39f33d3d3d3d363d3d37363d735f526035600c84f090508061211c5763301164255f526004601cfd5b5f60215292915050565b6040518061012001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f67ffffffffffffffff1681526020015f67ffffffffffffffff1681526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b828054828255905f5260205f20908101928215612262579160200282015b82811115612261578251825f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019061220a565b5b50905061226f9190612273565b5090565b5b8082111561228a575f815f905550600101612274565b5090565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6122b18161229f565b81146122bb575f80fd5b50565b5f813590506122cc816122a8565b92915050565b5f602082840312156122e7576122e6612297565b5b5f6122f4848285016122be565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f61233f61233a612335846122fd565b61231c565b6122fd565b9050919050565b5f61235082612325565b9050919050565b5f61236182612346565b9050919050565b61237181612357565b82525050565b5f61238182612346565b9050919050565b61239181612377565b82525050565b5f6123a182612346565b9050919050565b6123b181612397565b82525050565b5f6123c182612325565b9050919050565b5f6123d2826123b7565b9050919050565b6123e2816123c8565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f61241b82612346565b9050919050565b61242b81612411565b82525050565b5f61243c8383612422565b60208301905092915050565b5f602082019050919050565b5f61245e826123e8565b61246881856123f2565b935061247383612402565b805f5b838110156124a357815161248a8882612431565b975061249583612448565b925050600181019050612476565b5085935050505092915050565b5f67ffffffffffffffff82169050919050565b6124cc816124b0565b82525050565b6124db8161229f565b82525050565b5f6124eb826122fd565b9050919050565b6124fb816124e1565b82525050565b5f61012083015f8301516125175f860182612368565b50602083015161252a6020860182612388565b50604083015161253d60408601826123a8565b50606083015161255060608601826123d9565b50608083015184820360808601526125688282612454565b91505060a083015161257d60a08601826124c3565b5060c083015161259060c08601826124c3565b5060e08301516125a360e08601826124d2565b506101008301516125b86101008601826124f2565b508091505092915050565b5f6020820190508181035f8301526125db8184612501565b905092915050565b6125ec816124e1565b82525050565b5f6020820190506126055f8301846125e3565b92915050565b612614816124b0565b811461261e575f80fd5b50565b5f8135905061262f8161260b565b92915050565b5f6020828403121561264a57612649612297565b5b5f61265784828501612621565b91505092915050565b612669816124e1565b8114612673575f80fd5b50565b5f8135905061268481612660565b92915050565b5f6020828403121561269f5761269e612297565b5b5f6126ac84828501612676565b91505092915050565b6126be8161229f565b82525050565b5f6020820190506126d75f8301846126b5565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f8401126126fe576126fd6126dd565b5b8235905067ffffffffffffffff81111561271b5761271a6126e1565b5b602083019150836001820283011115612737576127366126e5565b5b9250929050565b5f805f805f8060a0878903121561275857612757612297565b5b5f61276589828a016122be565b965050602061277689828a016122be565b955050604061278789828a01612676565b945050606087013567ffffffffffffffff8111156127a8576127a761229b565b5b6127b489828a016126e9565b935093505060806127c789828a01612676565b9150509295509295509295565b5f6127de82612346565b9050919050565b6127ee816127d4565b82525050565b5f6020820190506128075f8301846127e5565b92915050565b612816816124b0565b82525050565b5f60208201905061282f5f83018461280d565b92915050565b5f805f805f6080868803121561284e5761284d612297565b5b5f61285b888289016122be565b955050602061286c888289016122be565b945050604061287d88828901612676565b935050606086013567ffffffffffffffff81111561289e5761289d61229b565b5b6128aa888289016126e9565b92509250509295509295909350565b5f6128c382612346565b9050919050565b6128d3816128b9565b82525050565b5f6020820190506128ec5f8301846128ca565b92915050565b5f806020838503121561290857612907612297565b5b5f83013567ffffffffffffffff8111156129255761292461229b565b5b612931858286016126e9565b92509250509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60608201905061297d5f8301866125e3565b61298a60208301856126b5565b61299760408301846126b5565b949350505050565b5f82825260208201905092915050565b828183375f83830152505050565b5f601f19601f8301169050919050565b5f6129d8838561299f565b93506129e58385846129af565b6129ee836129bd565b840190509392505050565b5f608082019050612a0c5f8301886126b5565b612a1960208301876126b5565b612a2660408301866125e3565b8181036060830152612a398184866129cd565b90509695505050505050565b5f8115159050919050565b612a5981612a45565b8114612a63575f80fd5b50565b5f81519050612a7481612a50565b92915050565b5f60208284031215612a8f57612a8e612297565b5b5f612a9c84828501612a66565b91505092915050565b5f604082019050612ab85f8301866125e3565b8181036020830152612acb8184866129cd565b9050949350505050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612b0f826129bd565b810181811067ffffffffffffffff82111715612b2e57612b2d612ad9565b5b80604052505050565b5f612b4061228e565b9050612b4c8282612b06565b919050565b5f80fd5b5f612b5f826122fd565b9050919050565b5f612b7082612b55565b9050919050565b612b8081612b66565b8114612b8a575f80fd5b50565b5f81519050612b9b81612b77565b92915050565b5f81519050612baf81612660565b92915050565b5f80fd5b5f67ffffffffffffffff821115612bd357612bd2612ad9565b5b612bdc826129bd565b9050602081019050919050565b8281835e5f83830152505050565b5f612c09612c0484612bb9565b612b37565b905082815260208101848484011115612c2557612c24612bb5565b5b612c30848285612be9565b509392505050565b5f82601f830112612c4c57612c4b6126dd565b5b8151612c5c848260208601612bf7565b91505092915050565b5f60608284031215612c7a57612c79612ad5565b5b612c846060612b37565b90505f612c9384828501612a66565b5f830152506020612ca684828501612ba1565b602083015250604082015167ffffffffffffffff811115612cca57612cc9612b51565b5b612cd684828501612c38565b60408301525092915050565b5f67ffffffffffffffff821115612cfc57612cfb612ad9565b5b602082029050602081019050919050565b5f612d1f612d1a84612ce2565b612b37565b90508083825260208201905060208402830185811115612d4257612d416126e5565b5b835b81811015612d8957805167ffffffffffffffff811115612d6757612d666126dd565b5b808601612d748982612c65565b85526020850194505050602081019050612d44565b5050509392505050565b5f82601f830112612da757612da66126dd565b5b8151612db7848260208601612d0d565b91505092915050565b5f81519050612dce8161260b565b92915050565b5f81519050612de2816122a8565b92915050565b5f6101208284031215612dfe57612dfd612ad5565b5b612e09610120612b37565b90505f612e1884828501612b8d565b5f83015250602082015167ffffffffffffffff811115612e3b57612e3a612b51565b5b612e4784828501612c65565b602083015250604082015167ffffffffffffffff811115612e6b57612e6a612b51565b5b612e7784828501612c65565b604083015250606082015167ffffffffffffffff811115612e9b57612e9a612b51565b5b612ea784828501612c65565b606083015250608082015167ffffffffffffffff811115612ecb57612eca612b51565b5b612ed784828501612d93565b60808301525060a0612eeb84828501612dc0565b60a08301525060c0612eff84828501612dc0565b60c08301525060e0612f1384828501612dd4565b60e083015250610100612f2884828501612ba1565b6101008301525092915050565b5f60208284031215612f4a57612f49612297565b5b5f82015167ffffffffffffffff811115612f6757612f6661229b565b5b612f7384828501612de8565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f612fb3826124b0565b9150612fbe836124b0565b9250828201905067ffffffffffffffff811115612fde57612fdd612f7c565b5b92915050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61301881612fe4565b82525050565b5f6020820190506130315f83018461300f565b92915050565b5f6130418261229f565b915061304c8361229f565b925082820390508181111561306457613063612f7c565b5b92915050565b5f60808201905061307d5f8301876126b5565b61308a60208301866125e3565b61309760408301856125e3565b6130a460608301846125e3565b95945050505050565b5f6130b78261229f565b91506130c28361229f565b92508282026130d08161229f565b915082820484148315176130e7576130e6612f7c565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f6131258261229f565b91506131308361229f565b9250826131405761313f6130ee565b5b828204905092915050565b5f60408201905061315e5f83018561300f565b61316b60208301846125e3565b9392505050565b5f81519050919050565b5f61318682613172565b613190818561299f565b93506131a0818560208601612be9565b6131a9816129bd565b840191505092915050565b5f6020820190508181035f8301526131cc818461317c565b905092915050565b5f602082840312156131e9576131e8612297565b5b5f82015167ffffffffffffffff8111156132065761320561229b565b5b61321284828501612c38565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52600160045260245ffdfea2646970667358221220fb22934e0d9f7a8e32d07cd1f2621ea36204627afface45e5bc80aab6122bb7d64736f6c634300081a0033";function N(b){const e=b.state.current,f=b.state.connections.get(e),a=f==null?void 0:f.accounts,s=a==null?void 0:a[0],t=b.chains.find(r=>r.id===(f==null?void 0:f.chainId)),c=b.state.status;switch(c){case"connected":return{address:s,addresses:a,chain:t,chainId:f==null?void 0:f.chainId,connector:f==null?void 0:f.connector,isConnected:!0,isConnecting:!1,isDisconnected:!1,isReconnecting:!1,status:c};case"reconnecting":return{address:s,addresses:a,chain:t,chainId:f==null?void 0:f.chainId,connector:f==null?void 0:f.connector,isConnected:!!s,isConnecting:!1,isDisconnected:!1,isReconnecting:!0,status:c};case"connecting":return{address:s,addresses:a,chain:t,chainId:f==null?void 0:f.chainId,connector:f==null?void 0:f.connector,isConnected:!1,isConnecting:!0,isDisconnected:!1,isReconnecting:!1,status:c};case"disconnected":return{address:void 0,addresses:void 0,chain:void 0,chainId:void 0,connector:void 0,isConnected:!1,isConnecting:!1,isDisconnected:!0,isReconnecting:!1,status:c}}}function uf(b){return b.state.chainId}function x(b,e,f){const a=b[e.name];if(typeof a=="function")return a;const s=b[f];return typeof s=="function"?s:t=>e(b,t)}const lf="2.13.0",hf=()=>`@wagmi/core@${lf}`;var $=function(b,e,f,a){if(f==="a"&&!a)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?b!==e||!a:!e.has(b))throw new TypeError("Cannot read private member from an object whose class did not declare it");return f==="m"?a:f==="a"?a.call(b):a?a.value:e.get(b)},B,j;class A extends Error{get docsBaseUrl(){return"https://wagmi.sh/core"}get version(){return hf()}constructor(e,f={}){var t;super(),B.add(this),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"WagmiCoreError"});const a=f.cause instanceof A?f.cause.details:(t=f.cause)!=null&&t.message?f.cause.message:f.details,s=f.cause instanceof A&&f.cause.docsPath||f.docsPath;this.message=[e||"An error occurred.","",...f.metaMessages?[...f.metaMessages,""]:[],...s?[`Docs: ${this.docsBaseUrl}${s}.html${f.docsSlug?`#${f.docsSlug}`:""}`]:[],...a?[`Details: ${a}`]:[],`Version: ${this.version}`].join(`
|
|
2
|
+
`),f.cause&&(this.cause=f.cause),this.details=a,this.docsPath=s,this.metaMessages=f.metaMessages,this.shortMessage=e}walk(e){return $(this,B,"m",j).call(this,this,e)}}B=new WeakSet,j=function b(e,f){return f!=null&&f(e)?e:e.cause?$(this,B,"m",b).call(this,e.cause,f):e};class gf extends A{constructor(){super("Connector not connected."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorNotConnectedError"})}}class wf extends A{constructor({address:e,connector:f}){super(`Account "${e}" not found for connector "${f.name}".`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorAccountNotFoundError"})}}class mf extends A{constructor({connectionChainId:e,connectorChainId:f}){super(`The current chain of the connector (id: ${f}) does not match the connection's chain (id: ${e}).`,{metaMessages:[`Current Chain ID: ${f}`,`Expected Chain ID: ${e}`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"ConnectorChainMismatchError"})}}async function T(b,e={}){let f;if(e.connector){const{connector:n}=e,[l,m]=await Promise.all([n.getAccounts(),n.getChainId()]);f={accounts:l,chainId:m,connector:n}}else f=b.state.connections.get(b.state.current);if(!f)throw new gf;const a=e.chainId??f.chainId,s=await f.connector.getChainId();if(s!==f.chainId)throw new mf({connectionChainId:f.chainId,connectorChainId:s});const t=f.connector;if(t.getClient)return t.getClient({chainId:a});const c=H.parseAccount(e.account??f.accounts[0]);c.address=H.getAddress(c.address);const r=b.chains.find(n=>n.id===a),d=await f.connector.getProvider({chainId:a});if(e.account&&!f.accounts.some(n=>n.toLowerCase()===c.address.toLowerCase()))throw new wf({address:c.address,connector:t});return i.createClient({account:c,chain:r,name:"Connector Client",transport:n=>i.custom(d)({...n,retryCount:0})})}async function Af(b,e){const{abi:f,chainId:a,connector:s,...t}=e;let c;e.account?c=e.account:c=(await T(b,{chainId:a,connector:s})).account;const r=b.getClient({chainId:a}),d=x(r,O.simulateContract,"simulateContract"),{result:n,request:l}=await d({...t,abi:f,account:c});return{chainId:r.chain.id,result:n,request:{__mode:"prepared",...l,chainId:a}}}async function M(b,e){const{account:f,chainId:a,connector:s,__mode:t,...c}=e;let r;typeof f=="object"&&f.type==="local"?r=b.getClient({chainId:a}):r=await T(b,{account:f,chainId:a,connector:s});const{connector:d}=N(b);let n;if(t==="prepared"||d!=null&&d.supportsSimulation)n=c;else{const{request:v}=await Af(b,{...c,account:f,chainId:a});n=v}return await x(r,O.writeContract,"writeContract")({...n,...f?{account:f}:{},chain:a?{id:a}:null})}function vf(b){return b.address!==void 0&&typeof b.address=="object"?(e,f)=>{var c;const a=uf(e),s=N(e);let t;return f.chainId?t=f.chainId:f.account&&f.account===s.address||f.account===void 0?t=s.chainId:t=a,M(e,{...f,...b.functionName?{functionName:b.functionName}:{},address:t?(c=b.address)==null?void 0:c[t]:void 0,abi:b.abi})}:(e,f)=>M(e,{...f,...b.address?{address:b.address}:{},...b.functionName?{functionName:b.functionName}:{},abi:b.abi})}const G="0xF4905b327904E5797840fd8cD7F300001a34122f";function yf(b){return b.address}function Cf(b){return b.registryAddress&&b.protocolFeeReceiver}class pf extends af.Deployable{constructor({config:e,account:f,...a}){yf(a)&&a.address?super({account:f,config:e},a.address):Cf(a)?super({account:f,config:e},[a.registryAddress,a.protocolFeeReceiver]):super({account:f,config:e},G),this.abi=o.c}async createBoost(e,f){var D;const a=this.assertValidAddress(),[s,t]=this.validateDeploymentConfig(e,f);let{budget:c,action:r,validator:d,allowList:n,incentives:l,protocolFee:m=0n,referralFee:v=0n,maxParticipants:R=0n,owner:w}=s;const q=vf({abi:o.c,functionName:"createBoost",address:this.address});if(!w&&(w=((D=this._account)==null?void 0:D.address)||V.getAccount(t.config).address||i.zeroAddress,w===i.zeroAddress))throw new y.DeployableUnknownOwnerProvidedError;let z=i.zeroAddress;if(c.address){if(z=c.address,!await c.isAuthorized(a))throw new y.BudgetMustAuthorizeBoostCore(a)}else throw new y.MustInitializeBudgetError;let C={instance:i.zeroAddress,isBase:!0,parameters:i.zeroHash};if(r.address){const u=r.address===r.base||r.isBase;C={isBase:u,instance:r.address,parameters:u&&r.buildParameters(void 0,t).args.at(0)||i.zeroHash}}else C.parameters=r.buildParameters(void 0,t).args.at(0)||i.zeroHash,C.instance=r.base;let p={instance:i.zeroAddress,isBase:!0,parameters:i.zeroHash};if(d.address){const u=d.address===d.base||d.isBase;p={isBase:u,instance:d.address,parameters:u&&d.buildParameters({signers:[w],validatorCaller:a},t).args.at(0)||i.zeroHash}}else p.parameters=d.buildParameters({signers:[w],validatorCaller:a},t).args.at(0)||i.zeroHash,p.instance=d.base;let _={instance:i.zeroAddress,isBase:!0,parameters:i.zeroHash};if(n.address){const u=n.address===n.base||n.isBase;_={isBase:u,instance:n.address,parameters:i.zeroHash}}else _.parameters=n.buildParameters(void 0,t).args.at(0)||i.zeroHash,_.instance=n.base;let I=l.map(()=>({instance:i.zeroAddress,isBase:!0,parameters:i.zeroHash}));for(let u=0;u<l.length;u++){const h=l.at(u);if(h.address){const E=h.address===h.base||h.isBase;if(!E)throw new y.IncentiveNotCloneableError(h);I[u]={isBase:E,instance:h.address,parameters:E&&h.buildParameters(void 0,t).args.at(0)||i.zeroHash}}else I[u].parameters=h.buildParameters(void 0,t).args.at(0)||i.zeroHash,I[u].instance=h.base}const U={budget:z,action:C,validator:p,allowList:_,incentives:I,protocolFee:m,referralFee:v,maxParticipants:R,owner:w},W=await q(t.config,{args:[df.prepareBoostPayload(U)],...this.optionallyAttachAccount(t.account)}),k=await V.waitForTransactionReceipt(t.config,{hash:W}),P=i.parseEventLogs({abi:o.c,eventName:"BoostCreated",logs:k.logs}).at(0);let F=0n;if(!P)throw new y.BoostCoreNoIdentifierEmitted;F=P==null?void 0:P.args.boostIndex;const g=await this.readBoost(F);return new S.Boost({id:F,budget:c.at(g.budget),action:r.at(g.action),validator:d.at(g.validator),allowList:n.at(g.allowList),incentives:l.map((u,h)=>u.at(g.incentives.at(h))),protocolFee:g.protocolFee,referralFee:g.referralFee,maxParticipants:g.maxParticipants,owner:g.owner})}async claimIncentive(e,f,a,s,t){return this.awaitResult(this.claimIncentiveRaw(e,f,a,s,t))}async claimIncentiveRaw(e,f,a,s,t){const{request:c,result:r}=await o.Wl(this._config,{address:this.assertValidAddress(),args:[e,f,a,s],...this.optionallyAttachAccount(),...t});return{hash:await o.Hl(this._config,c),result:r}}async claimIncentiveFor(e,f,a,s,t,c){return this.awaitResult(this.claimIncentiveForRaw(e,f,a,s,t,c))}async claimIncentiveForRaw(e,f,a,s,t,c){const{request:r,result:d}=await o.Ql(this._config,{address:this.assertValidAddress(),args:[e,f,a,s,t],...this.optionallyAttachAccount(),...c});return{hash:await o.Vl(this._config,r),result:d}}async readBoost(e,f){return o.gl(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f})}async getBoost(e,f){let a;typeof e=="string"?a=BigInt(e):a=e;const{protocolFee:s,referralFee:t,maxParticipants:c,owner:r,...d}=await this.readBoost(a,f),n={config:this._config,account:this._account},[l,m,v,R,w]=await Promise.all([Q.actionFromAddress(n,d.action),ff.budgetFromAddress(n,d.budget),rf.validatorFromAddress(n,d.validator),K.allowListFromAddress(n,d.allowList),Promise.all(d.incentives.map(q=>L.incentiveFromAddress(n,q)))]);return new S.Boost({id:a,action:l,budget:m,validator:v,allowList:R,incentives:w,protocolFee:s,referralFee:t,maxParticipants:c,owner:r})}async getBoostCount(e){return o.Ml(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async isAuthorized(e,f){const a=await this.createBoostAuth();return o.pv(this._config,{address:a,args:[e],...this.optionallyAttachAccount(),...f})}async createBoostAuth(e){return o.hl(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async setCreateBoostAuth(e,f){return this.awaitResult(this.setCreateBoostAuthRaw(e.assertValidAddress(),{...f}))}async setCreateBoostAuthRaw(e,f){const{request:a,result:s}=await o.ty(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f});return{hash:await o.Pl(this._config,a),result:s}}async protocolFee(e){return o.El(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async protocolFeeReceiver(e){return o.Rl(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async setProcolFeeReceiver(e,f){return this.awaitResult(this.setProcolFeeReceiverRaw(e,{...f}))}async setProcolFeeReceiverRaw(e,f){const{request:a,result:s}=await o.ay(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f});return{hash:await o.Ul(this._config,a),result:s}}async claimFee(e){return o.Nl(this._config,{address:this.assertValidAddress(),args:[],...this.optionallyAttachAccount(),...e})}async setClaimFee(e,f){return this.awaitResult(this.setClaimFeeRaw(e,f))}async setClaimFeeRaw(e,f){const{request:a,result:s}=await o.ey(this._config,{address:this.assertValidAddress(),args:[e],...this.optionallyAttachAccount(),...f});return{hash:await o.Dl(this._config,a),result:s}}PassthroughAuth(e){return new Z.PassthroughAuth({config:this._config,account:this._account},e)}EventAction(e,f){return new J.EventAction({config:this._config,account:this._account},e,f)}SimpleAllowList(e,f){return new X.SimpleAllowList({config:this._config,account:this._account},e,f)}SimpleDenyList(e,f){return new Y.SimpleDenyList({config:this._config,account:this._account},e,f)}ManagedBudget(e){return new ef.ManagedBudget({config:this._config,account:this._account},e)}AllowListIncentive(e){return new bf.AllowListIncentive({config:this._config,account:this._account},e)}CGDAIncentive(e){return new tf.CGDAIncentive({config:this._config,account:this._account},e)}ERC20Incentive(e){return new sf.ERC20Incentive({config:this._config,account:this._account},e)}PointsIncentive(e){return new cf.PointsIncentive({config:this._config,account:this._account},e)}SignerValidator(e,f){return new nf.SignerValidator({config:this._config,account:this._account},e,f)}ERC20VariableIncentive(e,f){return new L.ERC20VariableIncentive({config:this._config,account:this._account},e,f)}buildParameters(e,f){const[a,s]=this.validateDeploymentConfig(e,f);return{abi:o.c,bytecode:of,args:a,...this.optionallyAttachAccount(s.account)}}}exports.boostCoreAbi=o.c;exports.BOOST_CORE_ADDRESS=G;exports.BoostCore=pf;
|
|
3
3
|
//# sourceMappingURL=BoostCore.cjs.map
|