SetPaused
func(on string)SetPaused freezes posts, replies, tips, and ticket buys when on is true/1/yes. Pass false/0/no to reopen. Ticket sells are never paused.
- OID
- 0ac1c9…848d:3
SetPaused details
SetTreasury
func(next .uverse.address)SetTreasury moves future protocol fees and surplus sweeps to next.
- OID
- 0ac1c9…848d:5
SetTreasury details
TransferAdmin
func(next .uverse.address)TransferAdmin rotates the pause/sweep key.
- OID
- 0ac1c9…848d:6
TransferAdmin details
SetSuccessor
func(next string)SetSuccessor records the package path of a later realm. An empty path clears it. This does not move coins or shares.
- OID
- 0ac1c9…848d:7
SetSuccessor details
validSuccessor
func(path string) bool- OID
- 0ac1c9…848d:8
validSuccessor details
Sweep
func(confirm string)Sweep sends this realm's ugnot above TotalReserve to the treasury. confirm must be the word "sweep". Ticket collateral is not included.
- OID
- 0ac1c9…848d:9
Sweep details
Post
func(body string, gated string) intPost publishes a top-level post and returns its id. gated is yes/1/true/khoa to withhold the body from Render. The body is still public chain state. Pass an empty gated value for a public post.
- OID
- 0ac1c9…848d:10
Post details
Reply
func(parent int, body string) intReply publishes a reply to parent and returns the new id. Replies are public.
- OID
- 0ac1c9…848d:12
Reply details
writePost
func(author *arena.Profile, parent int, body string, gated bool) int- OID
- 0ac1c9…848d:13
writePost details
yesNo
func(v bool) string- OID
- 0ac1c9…848d:14
yesNo details
Delete
func(id int)Delete soft-deletes the caller's post and clears its body from current state. The original transaction still holds the text in chain history.
- OID
- 0ac1c9…848d:15
Delete details
Like
func(id int)Like adds the caller's like. One like per account.
- OID
- 0ac1c9…848d:16
Like details
Unlike
func(id int)Unlike removes the caller's like.
- OID
- 0ac1c9…848d:17
Unlike details
Tip
func(id int)Tip forwards the attached ugnot to the post's author. The realm does not keep it.
- OID
- 0ac1c9…848d:18
Tip details
GatedBody
func(id int) stringGatedBody returns a gated post's text for the author or a current ticket holder. Chain storage is public; this only gates the convenience call and Render.
- OID
- 0ac1c9…848d:19
GatedBody details
livePost
func(id int) *arena.Article- OID
- 0ac1c9…848d:20
livePost details
Liked
func(who .uverse.address, id int) boolLiked reports whether who liked the post.
- OID
- 0ac1c9…848d:21
Liked details
Register
func(handle string, name string, bio string, referrer string)Register opens a profile for the calling account. handle is 3–16 chars of a-z, 0-9 and underscore. referrer may be empty or the bech32 address of an existing member. A member can register once.
- OID
- 0ac1c9…848d:22
Register details
UpdateProfile
func(name string, bio string)UpdateProfile replaces the display name and bio. The handle stays.
- OID
- 0ac1c9…848d:24
UpdateProfile details
Follow
func(handle string)Follow records that the caller follows handle.
- OID
- 0ac1c9…848d:25
Follow details
Unfollow
func(handle string)Unfollow removes a follow.
- OID
- 0ac1c9…848d:26
Unfollow details
Following
func(from .uverse.address, handle string) boolFollowing reports whether from follows the handle.
- OID
- 0ac1c9…848d:27
Following details
Holding
typeHolding is one creator's tickets in a wallet. It is a copy.
Value
arena.Holding
mustLimit
func(n int) int- OID
- 0ac1c9…848d:28
mustLimit details
Feed
func(before int, limit int) []arena.ArticleFeed lists newest top-level posts with id \< before. before 0 starts at the newest.
- OID
- 0ac1c9…848d:30
Feed details
PostsBy
func(addr .uverse.address, before int, limit int) []arena.ArticlePostsBy lists one member's newest top-level posts with id \< before.
- OID
- 0ac1c9…848d:31
PostsBy details
Replies
func(parent int, after int, limit int) []arena.ArticleReplies lists direct replies of parent with id > after, oldest first.
- OID
- 0ac1c9…848d:32
Replies details
Handles
func(after string, limit int) []arena.ProfileHandles lists profiles in handle order, strictly after the given handle.
- OID
- 0ac1c9…848d:33
Handles details
FollowingList
func(who .uverse.address, after .uverse.address, limit int) []arena.ProfileFollowingList lists profiles \`who\` follows, in address order, after \`after\`.
- OID
- 0ac1c9…848d:34
FollowingList details
FollowerList
func(who .uverse.address, after .uverse.address, limit int) []arena.ProfileFollowerList lists profiles that follow \`who\`, in address order, after \`after\`.
- OID
- 0ac1c9…848d:35
FollowerList details
edgeList
func(who .uverse.address, after .uverse.address, limit int, sep string) []arena.Profile- OID
- 0ac1c9…848d:36
edgeList details
Holdings
func(holder .uverse.address, after .uverse.address, limit int) []arena.HoldingHoldings lists ticket balances of holder, after the given creator address.
- OID
- 0ac1c9…848d:37
Holdings details
Hot
func(limit int) []arena.ArticleHot ranks the newest window the same way Render does. It is not a global index.
- OID
- 0ac1c9…848d:38
Hot details
MemberCount
func() intMemberCount is the number of registered handles.
- OID
- 0ac1c9…848d:39
MemberCount details
FeedCount
func() intFeedCount is the number of live top-level posts still in the feed index.
- OID
- 0ac1c9…848d:40
FeedCount details
LatestID
func() intLatestID is the newest post id, or 0 when nothing has been posted.
- OID
- 0ac1c9…848d:41
LatestID details
hotWindow
untyped bigintValue
(30 <untyped> bigint)
scoredPost
typeValue
arena.scoredPost
insertRank
func(top []arena.scoredPost, row arena.scoredPost, limit int) []arena.scoredPost- OID
- 0ac1c9…848d:42
insertRank details
recentPosts
func(before int, limit int) []*arena.Article- OID
- 0ac1c9…848d:43
recentPosts details
Render
func(path string) stringRender is the short gnoweb page for this fund realm. The long client and Sheet live in the view realm. A realm has to declare Render, and the storage deposit of this package cannot hold both the curve and the full client.
- OID
- 0ac1c9…848d:44
Render details
CreatorFeeBps
int64Value
500
ProtocolFeeBps
int64Value
500
ReferralFeeBps
int64Value
100
TicketUnit
int64Value
10000
MaxSupply
untyped bigintValue
(2000 <untyped> bigint)
MaxTrade
untyped bigintValue
(20 <untyped> bigint)
MaxBodyRunes
untyped bigintValue
(280 <untyped> bigint)
ProtocolVersion
untyped stringValue
"1"
maxHandle
untyped bigintValue
(16 <untyped> bigint)
minHandle
untyped bigintValue
(3 <untyped> bigint)
maxNameRunes
untyped bigintValue
(32 <untyped> bigint)
maxNameBytes
untyped bigintValue
(128 <untyped> bigint)
maxBioRunes
untyped bigintValue
(160 <untyped> bigint)
maxBioBytes
untyped bigintValue
(640 <untyped> bigint)
maxBodyBytes
untyped bigintValue
(1120 <untyped> bigint)
Profile
typeProfile is a copy of a member's public record.
Value
arena.Profile
Article
typeArticle is a copy of one post. Gated bodies are still stored on chain; Render withholds them, and GatedBody checks the caller.
Value
arena.Article
book
typeValue
arena.book
store
typeTrees stay unexported. avl.Iterate takes a callback; handing out the tree would let another realm run that callback under this realm.
Value
arena.store
state
*arena.store- OID
- 0ac1c9…848d:96
state details
init.61
func()- OID
- 0ac1c9…848d:47
init.61 details
newStore
func() *arena.store- OID
- 0ac1c9…848d:49
newStore details
Admin
func() .uverse.address- OID
- 0ac1c9…848d:50
Admin details
Treasury
func() .uverse.address- OID
- 0ac1c9…848d:51
Treasury details
Version
func() stringVersion is this package revision. It has no setter.
- OID
- 0ac1c9…848d:52
Version details
Successor
func() stringSuccessor is the package path of a later realm, or empty. The later realm does not receive this realm's ticket reserve.
- OID
- 0ac1c9…848d:53
Successor details
Paused
func() boolPaused reports whether new posts, replies, tips, and ticket buys are frozen. Sells stay open so ticket collateral can still exit.
- OID
- 0ac1c9…848d:54
Paused details
TotalReserve
func() int64TotalReserve is the ugnot locked to back outstanding tickets.
- OID
- 0ac1c9…848d:55
TotalReserve details
caller
func() .uverse.address- OID
- 0ac1c9…848d:56
caller details
mustNoPay
func()- OID
- 0ac1c9…848d:57
mustNoPay details
takeUgnot
func() int64- OID
- 0ac1c9…848d:58
takeUgnot details
payout
func(to .uverse.address, amt int64, why string)- OID
- 0ac1c9…848d:59
payout details
mustAdmin
func()- OID
- 0ac1c9…848d:60
mustAdmin details
pad
func(n int) string- OID
- 0ac1c9…848d:61
pad details
validHandle
func(s string) bool- OID
- 0ac1c9…848d:62
validHandle details
reserved
func(h string) bool- OID
- 0ac1c9…848d:63
reserved details
cleanLine
func(s string, maxRunes int, maxBytes int, label string, allowEmpty bool) string- OID
- 0ac1c9…848d:64
cleanLine details
cleanBody
func(s string) string- OID
- 0ac1c9…848d:65
cleanBody details
isYes
func(s string) bool- OID
- 0ac1c9…848d:66
isYes details
profileByAddr
func(a .uverse.address) *arena.Profile- OID
- 0ac1c9…848d:67
profileByAddr details
lookup
func(handle string) *arena.Profile- OID
- 0ac1c9…848d:68
lookup details
mustMember
func(a .uverse.address) *arena.Profile- OID
- 0ac1c9…848d:69
mustMember details
bookOf
func(creator .uverse.address) *arena.book- OID
- 0ac1c9…848d:70
bookOf details
postByID
func(id int) *arena.Article- OID
- 0ac1c9…848d:71
postByID details
shareKey
func(holder .uverse.address, creator .uverse.address) string- OID
- 0ac1c9…848d:72
shareKey details
getShares
func(holder .uverse.address, creator .uverse.address) int- OID
- 0ac1c9…848d:73
getShares details
setShares
func(holder .uverse.address, creator .uverse.address, n int)- OID
- 0ac1c9…848d:74
setShares details
authorKey
func(a .uverse.address, id int) string- OID
- 0ac1c9…848d:75
authorKey details
followKey
func(from .uverse.address, to .uverse.address) string- OID
- 0ac1c9…848d:76
followKey details
fanKey
func(creator .uverse.address, fan .uverse.address) string- OID
- 0ac1c9…848d:77
fanKey details
likeKey
func(id int, who .uverse.address) string- OID
- 0ac1c9…848d:78
likeKey details
ProfileByHandle
func(handle string) (arena.Profile, bool)ProfileByHandle returns a copy of the profile, or false when the handle is unknown.
- OID
- 0ac1c9…848d:79
ProfileByHandle details
ProfileOf
func(addr .uverse.address) (arena.Profile, bool)ProfileOf returns a copy of the profile bound to addr.
- OID
- 0ac1c9…848d:80
ProfileOf details
GetPost
func(id int) (arena.Article, bool)GetPost returns a copy of the post. The copy does not alias storage.
- OID
- 0ac1c9…848d:81
GetPost details
SharesOf
func(holder .uverse.address, handle string) intSharesOf returns how many tickets holder has of the creator's handle.
- OID
- 0ac1c9…848d:82
SharesOf details
SupplyOf
func(handle string) (supply int, reserve int64, holders int)SupplyOf returns tickets outstanding, ugnot locked in that curve, and holders.
- OID
- 0ac1c9…848d:83
SupplyOf details
QuoteBuy
func(handle string, amount int) (due int64, curve int64, creatorFee int64, protocolFee int64, referralFee int64)QuoteBuy is the exact ugnot a buyer must attach to mint amount tickets. due = curve + creator fee + protocol fee + referral fee. curve is what stays in the reserve. Fees are paid on top and forwarded.
- OID
- 0ac1c9…848d:84
QuoteBuy details
QuoteSell
func(handle string, amount int) (proceeds int64, curve int64, creatorFee int64, protocolFee int64, referralFee int64)QuoteSell is what a seller receives, and the fees taken out of the curve refund. The reserve drops by the full curve amount, so later sells stay solvent.
- OID
- 0ac1c9…848d:86
QuoteSell details
Buy
func(handle string, amount int)Buy mints amount tickets of handle. Attach exactly QuoteBuy's due in ugnot.
- OID
- 0ac1c9…848d:87
Buy details
Sell
func(handle string, amount int)Sell burns amount tickets and pays the caller from the reserve, minus fees. Sells stay available while the realm is paused.
- OID
- 0ac1c9…848d:88
Sell details
forwardFees
func(creator *arena.Profile, creatorFee int64, protocolFee int64, referralFee int64)- OID
- 0ac1c9…848d:89
forwardFees details
addShares
func(holder .uverse.address, creator .uverse.address, n int)- OID
- 0ac1c9…848d:90
addShares details
subShares
func(holder .uverse.address, creator .uverse.address, n int)- OID
- 0ac1c9…848d:91
subShares details
splitFees
func(curve int64, referred bool) (creator int64, protocol int64, referral int64)- OID
- 0ac1c9…848d:92
splitFees details
bps
func(amount int64, points int64) int64- OID
- 0ac1c9…848d:93
bps details
curveCost
func(supply int, amount int) int64curveCost is the ugnot reserve needed to move \`amount\` tickets starting at supply. Ticket i (1-based) is priced i² \* TicketUnit. The sum of squares is exact.
- OID
- 0ac1c9…848d:94
curveCost details
sumSq
func(n int64) int64- OID
- 0ac1c9…848d:95