D17 DOCS
ContractsABI reference

D17Factory

Canonical registry, launch configuration validator, and public launch entry point.

Canonical registry, launch configuration validator, and public launch entry point.

Important behavior

  • createLaunch is the public atomic launch entry point.
  • Factory dependencies can be pinned once; public deployment ownership is then renounced.
  • lockersOfOwner and canonical launch/locker records are public discovery surfaces.

Surface summary

ConstructorsFunctionsEventsCustom errorsReceive/fallback
138700

Construction

Constructor

constructor(address owner_, address weth_, address router_)
  • Mutability: nonpayable

Inputs

FieldABI type
owner_address
weth_address
router_address

Functions

BPS

function BPS() external view returns (uint16 value1)
  • Signature: BPS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint16

D17_FACTORY_ID

function D17_FACTORY_ID() external view returns (bytes32 value1)
  • Signature: D17_FACTORY_ID()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1bytes32

LOGO_SVG_BASE64_PREFIX

function LOGO_SVG_BASE64_PREFIX() external view returns (string value1)
  • Signature: LOGO_SVG_BASE64_PREFIX()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1string

MAX_DESCRIPTION_BYTES

function MAX_DESCRIPTION_BYTES() external view returns (uint256 value1)
  • Signature: MAX_DESCRIPTION_BYTES()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256
function MAX_LINKS() external view returns (uint256 value1)
  • Signature: MAX_LINKS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256
function MAX_LINK_TYPE_BYTES() external view returns (uint256 value1)
  • Signature: MAX_LINK_TYPE_BYTES()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256
function MAX_LINK_URL_BYTES() external view returns (uint256 value1)
  • Signature: MAX_LINK_URL_BYTES()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256

MAX_LOGO_SVG_URI_BYTES

function MAX_LOGO_SVG_URI_BYTES() external view returns (uint256 value1)
  • Signature: MAX_LOGO_SVG_URI_BYTES()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256

MAX_MANUAL_DISTRIBUTION_BPS

function MAX_MANUAL_DISTRIBUTION_BPS() external view returns (uint16 value1)
  • Signature: MAX_MANUAL_DISTRIBUTION_BPS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint16

MAX_REFUND_PENALTY_BPS

function MAX_REFUND_PENALTY_BPS() external view returns (uint16 value1)
  • Signature: MAX_REFUND_PENALTY_BPS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint16

MAX_REFUND_SECONDS

function MAX_REFUND_SECONDS() external view returns (uint32 value1)
  • Signature: MAX_REFUND_SECONDS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint32

MAX_ROUND_SECONDS

function MAX_ROUND_SECONDS() external view returns (uint32 value1)
  • Signature: MAX_ROUND_SECONDS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint32

MAX_SETTLEMENT_SECONDS

function MAX_SETTLEMENT_SECONDS() external view returns (uint32 value1)
  • Signature: MAX_SETTLEMENT_SECONDS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint32

MAX_START_DELAY

function MAX_START_DELAY() external view returns (uint64 value1)
  • Signature: MAX_START_DELAY()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint64

MAX_TREASURY_BPS

function MAX_TREASURY_BPS() external view returns (uint16 value1)
  • Signature: MAX_TREASURY_BPS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint16

MIN_ANCHOR_PRICE_WAD

function MIN_ANCHOR_PRICE_WAD() external view returns (uint256 value1)
  • Signature: MIN_ANCHOR_PRICE_WAD()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256

MIN_COMMIT_WETH

function MIN_COMMIT_WETH() external view returns (uint256 value1)
  • Signature: MIN_COMMIT_WETH()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256

MIN_LP_TOKENS

function MIN_LP_TOKENS() external view returns (uint256 value1)
  • Signature: MIN_LP_TOKENS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256

MIN_ROUND_ALLOCATION_TOKENS

function MIN_ROUND_ALLOCATION_TOKENS() external view returns (uint256 value1)
  • Signature: MIN_ROUND_ALLOCATION_TOKENS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint256

MIN_ROUND_SECONDS

function MIN_ROUND_SECONDS() external view returns (uint32 value1)
  • Signature: MIN_ROUND_SECONDS()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint32

ROUND_COUNT

function ROUND_COUNT() external view returns (uint8 value1)
  • Signature: ROUND_COUNT()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1uint8

createLaunch

function createLaunch((string,string,string,string,(string,string)[],uint256,uint256,uint256,uint256,uint256,address,address,uint64,uint32[5],uint32,uint32,uint256,uint256,uint256,uint16[5],uint16,uint16,bool) config) external nonpayable returns (address token, address launch, address liquidityVault)
  • Signature: createLaunch((string,string,string,string,(string,string)[],uint256,uint256,uint256,uint256,uint256,address,address,uint64,uint32[5],uint32,uint32,uint256,uint256,uint256,uint16[5],uint16,uint16,bool))
  • Mutability: nonpayable

Inputs

FieldABI type
config(string,string,string,string,(string,string)[],uint256,uint256,uint256,uint256,uint256,address,address,uint64,uint32[5],uint32,uint32,uint256,uint256,uint256,uint16[5],uint16,uint16,bool)
config.tokenNamestring
config.tokenSymbolstring
config.descriptionstring
config.logoSvgUristring
config.links(string,string)[]
config.links.linkTypestring
config.links.urlstring
config.tokenSupplyuint256
config.saleTokensuint256
config.lpTokensuint256
config.manualDistributionTokensuint256
config.deadTokensuint256
config.deadRecipientaddress
config.treasuryaddress
config.startTimeuint64
config.roundSecondsuint32[5]
config.refundSecondsuint32
config.settlementSecondsuint32
config.minCommitWethuint256
config.minPhase1Wethuint256
config.minAnchorPriceWaduint256
config.roundSharesBpsuint16[5]
config.treasuryBpsuint16
config.refundPenaltyBpsuint16
config.burnUnsoldSaleTokensbool

Outputs

FieldABI type
tokenaddress
launchaddress
liquidityVaultaddress

isCanonicalLaunch

function isCanonicalLaunch(address launch, bytes32 rulesHash) external view returns (bool value1)
  • Signature: isCanonicalLaunch(address,bytes32)
  • Mutability: view

Inputs

FieldABI type
launchaddress
rulesHashbytes32

Outputs

FieldABI type
value1bool

isLocker

function isLocker(address value1) external view returns (bool value1)
  • Signature: isLocker(address)
  • Mutability: view

Inputs

FieldABI type
value1address

Outputs

FieldABI type
value1bool

launchFactory

function launchFactory() external view returns (address value1)
  • Signature: launchFactory()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1address

launchFactoryPinned

function launchFactoryPinned() external view returns (bool value1)
  • Signature: launchFactoryPinned()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1bool

launches

function launches(address value1) external view returns (bool canonical, address creator, address token, address liquidityVault, bytes32 rulesHash)
  • Signature: launches(address)
  • Mutability: view

Inputs

FieldABI type
value1address

Outputs

FieldABI type
canonicalbool
creatoraddress
tokenaddress
liquidityVaultaddress
rulesHashbytes32

lockerFactory

function lockerFactory() external view returns (address value1)
  • Signature: lockerFactory()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1address

lockerFactoryPinned

function lockerFactoryPinned() external view returns (bool value1)
  • Signature: lockerFactoryPinned()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1bool

lockersOfOwner

function lockersOfOwner(address lockerOwner) external view returns (address[] value1)
  • Signature: lockersOfOwner(address)
  • Mutability: view

Inputs

FieldABI type
lockerOwneraddress

Outputs

FieldABI type
value1address[]

owner

function owner() external view returns (address value1)
  • Signature: owner()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1address

pinLaunchFactory

function pinLaunchFactory(address launchFactory_) external nonpayable
  • Signature: pinLaunchFactory(address)
  • Mutability: nonpayable

Inputs

FieldABI type
launchFactory_address

Outputs

None.

pinLockerFactory

function pinLockerFactory(address lockerFactory_) external nonpayable
  • Signature: pinLockerFactory(address)
  • Mutability: nonpayable

Inputs

FieldABI type
lockerFactory_address

Outputs

None.

registerLockerFor

function registerLockerFor(address lockerOwner, address locker) external nonpayable
  • Signature: registerLockerFor(address,address)
  • Mutability: nonpayable

Inputs

FieldABI type
lockerOwneraddress
lockeraddress

Outputs

None.

renounceOwnership

function renounceOwnership() external nonpayable
  • Signature: renounceOwnership()
  • Mutability: nonpayable

Inputs

None.

Outputs

None.

router

function router() external view returns (address value1)
  • Signature: router()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1address

transferOwnership

function transferOwnership(address newOwner) external nonpayable
  • Signature: transferOwnership(address)
  • Mutability: nonpayable

Inputs

FieldABI type
newOwneraddress

Outputs

None.

weth

function weth() external view returns (address value1)
  • Signature: weth()
  • Mutability: view

Inputs

None.

Outputs

FieldABI type
value1address

Events

LaunchCreated

event LaunchCreated(address indexed creator, address indexed launch, address indexed token, address liquidityVault, bytes32 rulesHash)
  • Signature: LaunchCreated(address,address,address,address,bytes32)
  • Anonymous: no

Fields

FieldABI typeIndexed
creatoraddressyes
launchaddressyes
tokenaddressyes
liquidityVaultaddressno
rulesHashbytes32no

LaunchFactoryPinned

event LaunchFactoryPinned(address indexed launchFactory)
  • Signature: LaunchFactoryPinned(address)
  • Anonymous: no

Fields

FieldABI typeIndexed
launchFactoryaddressyes

LaunchMetadataPublished

event LaunchMetadataPublished(address indexed launch, bytes32 indexed metadataHash, string description, string logoSvgUri, string[] linkTypes, string[] linkUrls)
  • Signature: LaunchMetadataPublished(address,bytes32,string,string,string[],string[])
  • Anonymous: no

Fields

FieldABI typeIndexed
launchaddressyes
metadataHashbytes32yes
descriptionstringno
logoSvgUristringno
linkTypesstring[]no
linkUrlsstring[]no

LockerFactoryPinned

event LockerFactoryPinned(address indexed lockerFactory)
  • Signature: LockerFactoryPinned(address)
  • Anonymous: no

Fields

FieldABI typeIndexed
lockerFactoryaddressyes

LockerRegistered

event LockerRegistered(address indexed owner, address indexed locker, address indexed manager)
  • Signature: LockerRegistered(address,address,address)
  • Anonymous: no

Fields

FieldABI typeIndexed
owneraddressyes
lockeraddressyes
manageraddressyes

ManualDistributionConfigured

event ManualDistributionConfigured(address indexed launch, address indexed recipient, uint256 amount)
  • Signature: ManualDistributionConfigured(address,address,uint256)
  • Anonymous: no

Fields

FieldABI typeIndexed
launchaddressyes
recipientaddressyes
amountuint256no

OwnershipTransferred

event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
  • Signature: OwnershipTransferred(address,address)
  • Anonymous: no

Fields

FieldABI typeIndexed
previousOwneraddressyes
newOwneraddressyes

Generated from data/abi/D17Factory.abi.json. Every entry above is checked against that ABI by npm run check:contracts.