Search Apps Documentation Source Content File Folder Download Copy Actions Download State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

v1 state

Back to all declarations

LaneDirect

untyped string

Value

"direct"

LaneFairSale

untyped string

Value

"fairsale"

LaneAirdrop

untyped string

Value

"airdrop"

LaneCollection

untyped string

Value

"collection"

LaneNFTDrops

untyped string

Value

"nft_drops"

LaneNFTMarket

untyped string

Value

"nft_market"

NativeCurrency

untyped string

Value

"ugnot"

LedgerTokens

untyped string

Value

"tokens"

LedgerNFT

untyped string

Value

"nft"

maxCurrencies

untyped bigint

Value

(16 <untyped> bigint)

maxIssuers

untyped bigint

Value

(32 <untyped> bigint)

issuerPrefix

untyped string

Value

"gno.land/r/samcrew/"

maxCreationFee

int64

Value

768614336404564650

CurrencyParams

type

CurrencyParams holds the terms of one quote currency. A fee of -1 closes the lane that charges it.

Value

v1.CurrencyParams

Params

type

Params is one immutable snapshot of launch terms. A rate of -1 closes the lane that charges it.

Value

v1.Params

admin

.uverse.address

Value

<gnolang.StringValue>

pendingAdmin

.uverse.address

Value

<zero>

pauser

.uverse.address

Value

<gnolang.StringValue>

issuers

map[string]bool

// "\<ledger>:\<realm address>"

Open
OID
0375b0…2098:11
issuers details

Inspect map

owedCeilings

map[string]int64

// absent: no ceiling

Open
OID
0375b0…2098:22
owedCeilings details

Inspect map

unspendableRealm

func(who .uverse.address) bool
Open
OID
0375b0…2098:27
unspendableRealm details

Inspect func

IsUnspendable

func(who .uverse.address) bool

IsUnspendable reports whether a fee or a royalty paid to who could never be paid out again: who is one of the realms listed above, which have no function for that, or it is not an address as the chain writes one, so no caller can ever present it. It is a check for such receivers only, not for the recipient of a transfer: the sales realm is on the list and rightly holds and moves ledger balances of its own.

Open
OID
0375b0…2098:28
IsUnspendable details

Inspect func

validLane

func(lane string) bool
Open
OID
0375b0…2098:29
validLane details

Inspect func

versionString

func() string
Open
OID
0375b0…2098:30
versionString details

Inspect func

validAssetID

func(id string) bool
Open
OID
0375b0…2098:31
validAssetID details

Inspect func

ProposeAdmin

func(next .uverse.address)

ProposeAdmin stages a handoff to a user account or a realm. Nothing changes until that exact address accepts, so a target that cannot call is harmless.

Open
OID
0375b0…2098:32
ProposeAdmin details

Inspect func

CancelAdminProposal

func()
Open
OID
0375b0…2098:33
CancelAdminProposal details

Inspect func

validIssuerPath

func(path string) bool

validIssuerPath accepts a realm path below the samcrew namespace whose segments are plain lowercase names: nothing that could resolve elsewhere.

Open
OID
0375b0…2098:35
validIssuerPath details

Inspect func

AllowIssuer

func(ledger string, pkgPath string)

AllowIssuer lists a realm under gno.land/r/samcrew/ as an issuer for one ledger to read. The list only grows, so a ledger can bind what an issuer created to that issuer for good.

Open
OID
0375b0…2098:36
AllowIssuer details

Inspect func

IsIssuer

func(ledger string, who .uverse.address) bool
Open
OID
0375b0…2098:37
IsIssuer details

Inspect func

GetPendingAdmin

func() .uverse.address
Open
OID
0375b0…2098:39
GetPendingAdmin details

Inspect func

GetPauser

func() .uverse.address
Open
OID
0375b0…2098:40
GetPauser details

Inspect func

copyParams

func(p v1.Params) v1.Params
Open
OID
0375b0…2098:41
copyParams details

Inspect func

GetCurrentVersion

func() int64
Open
OID
0375b0…2098:42
GetCurrentVersion details

Inspect func

GetVersion

func(version int64) v1.Params
Open
OID
0375b0…2098:43
GetVersion details

Inspect func

GetTreasury

func() .uverse.address
Open
OID
0375b0…2098:44
GetTreasury details

Inspect func

GetPrimaryFeeBPS

func() int64
Open
OID
0375b0…2098:45
GetPrimaryFeeBPS details

Inspect func

GetNFTPrimaryFeeBPS

func() int64
Open
OID
0375b0…2098:46
GetNFTPrimaryFeeBPS details

Inspect func

GetNFTSecondaryFeeBPS

func() int64
Open
OID
0375b0…2098:47
GetNFTSecondaryFeeBPS details

Inspect func

GetTokenTerms

func(key string) string

GetTokenTerms is "\<direct creation fee>,\<fair-sale creation fee>,\<raise cap>" in a currency.

Open
OID
0375b0…2098:48
GetTokenTerms details

Inspect func

GetCollectionFee

func(key string) int64
Open
OID
0375b0…2098:49
GetCollectionFee details

Inspect func

AssertExpectedVersion

func(expected int64)
Open
OID
0375b0…2098:50
AssertExpectedVersion details

Inspect func

validateParams

func(p v1.Params)
Open
OID
0375b0…2098:51
validateParams details

Inspect func

appendVersion

func(next v1.Params, change string) int64
Open
OID
0375b0…2098:53
appendVersion details

Inspect func

findCurrency

func(p v1.Params, key string) (v1.CurrencyParams, bool)
Open
OID
0375b0…2098:54
findCurrency details

Inspect func

currencyTerms

func(p *v1.Params, key string) int

currencyTerms returns the index of key's terms in p, adding them with every lane closed when the currency is new.

Open
OID
0375b0…2098:55
currencyTerms details

Inspect func

SetTreasury

func(treasury .uverse.address) int64

SetTreasury names the receiver of protocol fees. Once named it can be replaced, not removed.

Open
OID
0375b0…2098:56
SetTreasury details

Inspect func

SetPrimaryFeeBPS

func(bps int64) int64
Open
OID
0375b0…2098:57
SetPrimaryFeeBPS details

Inspect func

SetNFTPrimaryFeeBPS

func(bps int64) int64
Open
OID
0375b0…2098:58
SetNFTPrimaryFeeBPS details

Inspect func

SetNFTSecondaryFeeBPS

func(bps int64) int64
Open
OID
0375b0…2098:59
SetNFTSecondaryFeeBPS details

Inspect func

SetTokenTerms

func(key string, directCreationFee int64, fairSaleCreationFee int64, fairSaleRaiseCap int64) int64

SetTokenTerms prices token creation in one currency and bounds what a single fair sale may raise in it.

Open
OID
0375b0…2098:60
SetTokenTerms details

Inspect func

SetCollectionFee

func(key string, fee int64) int64
Open
OID
0375b0…2098:61
SetCollectionFee details

Inspect func

RemoveCurrency

func(key string) int64

RemoveCurrency drops a currency's terms, its allowlist entry and its owed ceiling, so adding terms again later neither reopens it nor brings back an old ceiling by itself.

Open
OID
0375b0…2098:62
RemoveCurrency details

Inspect func

IsLaneReady

func(lane string, currency string) bool

IsLaneReady checks only immutable terms. The immediate allowlist is checked at action time so delisting cannot prevent an old launch's exits.

Open
OID
0375b0…2098:63
IsLaneReady details

Inspect func

Pause

func(lane string)

Pause closes a lane to new launches and contributions. Claims, refunds and settlements never read the gate, so nothing here can hold funds back.

Open
OID
0375b0…2098:64
Pause details

Inspect func

Unpause

func(lane string, currency string)

Unpause opens a lane. It needs a pauser in place and one listed currency whose terms for the lane are complete.

Open
OID
0375b0…2098:65
Unpause details

Inspect func

AssertLaneOpen

func(lane string, currency string)

AssertLaneOpen gates a new inflow: the lane is open and the currency is listed with complete terms. A caller that charges the terms in force reads them in the same transaction, as the NFT realms do; one that charges at the version its user signed for checks that version with AssertNewAction, as token creations and fair-sale launches do. The token lanes' exits use the terms recorded at launch and pass no gate.

Open
OID
0375b0…2098:67
AssertLaneOpen details

Inspect func

AssertNewAction

func(lane string, currency string, expectedVersion int64)

AssertNewAction also pins the version whose prices the caller signed for.

Open
OID
0375b0…2098:68
AssertNewAction details

Inspect func

SetPauser

func(next .uverse.address)

SetPauser names the one address, besides the admin, that may close lanes.

Open
OID
0375b0…2098:69
SetPauser details

Inspect func

SetCurrencyAllowed

func(key string, value bool)
Open
OID
0375b0…2098:70
SetCurrencyAllowed details

Inspect func

IsCurrencyAllowed

func(key string) bool
Open
OID
0375b0…2098:71
IsCurrencyAllowed details

Inspect func

SetSalesOwedCeiling

func(key string, ceiling int64)

SetSalesOwedCeiling bounds what the sales realm may owe in one currency, its fees, escrow, refunds and proceeds together, for a fair-sale contribution to be accepted. Nothing else reads it: settlements, claims, releases and sweeps go through at any ceiling, and a ceiling below what is already owed only stops new contributions. Unlike a pause, it lets running sales take orders while there is room. MaxInt64, the default, is no ceiling. It is not a term a launch signs for, so it adds no version.

Open
OID
0375b0…2098:72
SetSalesOwedCeiling details

Inspect func

GetSalesOwedCeiling

func(key string) int64
Open
OID
0375b0…2098:73
GetSalesOwedCeiling details

Inspect func

SetVerified

func(assetID string, value bool)
Open
OID
0375b0…2098:74
SetVerified details

Inspect func

IsVerified

func(assetID string) bool
Open
OID
0375b0…2098:75
IsVerified details

Inspect func

SetReserved

func(ticker string, value bool)
Open
OID
0375b0…2098:76
SetReserved details

Inspect func

IsReserved

func(ticker string) bool
Open
OID
0375b0…2098:77
IsReserved details

Inspect func

ActionStatusJSON

func(lane string, currency string) string

ActionStatusJSON reports only the current config gate for a new action. Other realm, custody and publication requirements are separate.

Open
OID
0375b0…2098:78
ActionStatusJSON details

Inspect func
LaneDirect : untyped string ="direct"
LaneFairSale : untyped string ="fairsale"
LaneAirdrop : untyped string ="airdrop"
LaneCollection : untyped string ="collection"
LaneNFTDrops : untyped string ="nft_drops"
LaneNFTMarket : untyped string ="nft_market"
NativeCurrency : untyped string ="ugnot"
LedgerTokens : untyped string ="tokens"
LedgerNFT : untyped string ="nft"
maxCurrencies : untyped bigint =(16 <untyped> bigint)
maxIssuers : untyped bigint =(32 <untyped> bigint)
issuerPrefix : untyped string ="gno.land/r/samcrew/"
maxCreationFee : int64 =768614336404564650
CurrencyParams : type =v1.CurrencyParams
Params : type =v1.Params
lanes : []string (len=6) Inspect
unspendable : []string (len=10) Inspect
admin : .uverse.address =<gnolang.StringValue>
pendingAdmin : .uverse.address =<zero>
pauser : .uverse.address =<gnolang.StringValue>
issuers : map[string]bool Inspect
versions : []v1.Params (len=7) Inspect
allowed : map[string]bool Inspect
paused : map[string]bool Inspect
verified : map[string]bool Inspect
reserved : map[string]bool Inspect
owedCeilings : map[string]int64 Inspect
init.27 : func() Inspect
caller : func() .uverse.address Inspect
requireAdmin : func() Inspect
unspendableRealm : func(who .uverse.address) bool Inspect
IsUnspendable : func(who .uverse.address) bool Inspect
validLane : func(lane string) bool Inspect
versionString : func() string Inspect
validAssetID : func(id string) bool Inspect
ProposeAdmin : func(next .uverse.address) Inspect
CancelAdminProposal : func() Inspect
AcceptAdmin : func() Inspect
validIssuerPath : func(path string) bool Inspect
AllowIssuer : func(ledger string, pkgPath string) Inspect
IsIssuer : func(ledger string, who .uverse.address) bool Inspect
GetAdmin : func() .uverse.address Inspect
GetPendingAdmin : func() .uverse.address Inspect
GetPauser : func() .uverse.address Inspect
copyParams : func(p v1.Params) v1.Params Inspect
GetCurrentVersion : func() int64 Inspect
GetVersion : func(version int64) v1.Params Inspect
GetTreasury : func() .uverse.address Inspect
GetPrimaryFeeBPS : func() int64 Inspect
GetNFTPrimaryFeeBPS : func() int64 Inspect
GetNFTSecondaryFeeBPS : func() int64 Inspect
GetTokenTerms : func(key string) string Inspect
GetCollectionFee : func(key string) int64 Inspect
AssertExpectedVersion : func(expected int64) Inspect
validateParams : func(p v1.Params) Inspect
latest : func() v1.Params Inspect
appendVersion : func(next v1.Params, change string) int64 Inspect
findCurrency : func(p v1.Params, key string) (v1.CurrencyParams, bool) Inspect
currencyTerms : func(p *v1.Params, key string) int Inspect
SetTreasury : func(treasury .uverse.address) int64 Inspect
SetPrimaryFeeBPS : func(bps int64) int64 Inspect
SetNFTPrimaryFeeBPS : func(bps int64) int64 Inspect
SetNFTSecondaryFeeBPS : func(bps int64) int64 Inspect
SetTokenTerms : func(key string, directCreationFee int64, fairSaleCreationFee int64, fairSaleRaiseCap int64) int64 Inspect
SetCollectionFee : func(key string, fee int64) int64 Inspect
RemoveCurrency : func(key string) int64 Inspect
IsLaneReady : func(lane string, currency string) bool Inspect
Pause : func(lane string) Inspect
Unpause : func(lane string, currency string) Inspect
IsPaused : func(lane string) bool Inspect
AssertLaneOpen : func(lane string, currency string) Inspect
AssertNewAction : func(lane string, currency string, expectedVersion int64) Inspect
SetPauser : func(next .uverse.address) Inspect
SetCurrencyAllowed : func(key string, value bool) Inspect
IsCurrencyAllowed : func(key string) bool Inspect
SetSalesOwedCeiling : func(key string, ceiling int64) Inspect
GetSalesOwedCeiling : func(key string) int64 Inspect
SetVerified : func(assetID string, value bool) Inspect
IsVerified : func(assetID string) bool Inspect
SetReserved : func(ticker string, value bool) Inspect
IsReserved : func(ticker string) bool Inspect
ActionStatusJSON : func(lane string, currency string) string Inspect