PathrockNetwork Gno Explorer
HomeBlocksTransactionsTokensRealmsPackagesValidatorsAnalytics

PathrockNetwork Gno Explorer — an independent explorer for Gno.land Mainnet (gnoland-1), operated by PathrockNetwork. Not an official Gno.land service.

gnowebarchive RPC

gno.land/p/samcrew/memba_weighted_host

Package
Open in gnoweb ↗

Overview

Kind
Pure package
Name
memba_weighted_host
Namespace
samcrew
Files
32 (gnomod.toml)
Exported functions
n/a — not supported for pure packages by the node (vm/qfuncs)
Module
gno.land/p/samcrew/memba_weighted_host
gno
0.9

Files (32)

  • gnomod.tomltoml
  • appstore_actions.gnogno
  • appstore_host.gnogno
  • appstore_reads.gnogno
  • arcade_actions.gnogno
  • arcade_host.gnogno
  • arcade_reads.gno
gno
  • badges_actions.gnogno
  • badges_host.gnogno
  • badges_reads.gnogno
  • channels_actions.gnogno
  • channels_host.gnogno
  • channels_reads.gnogno
  • escrow_actions.gnogno
  • escrow_host.gnogno
  • escrow_reads.gnogno
  • feed_actions.gnogno
  • feed_host.gnogno
  • feed_reads.gnogno
  • feedback_actions.gnogno
  • feedback_host.gnogno
  • feedback_reads.gnogno
  • host.gnogno
  • market_actions.gnogno
  • market_host.gnogno
  • quest_actions.gnogno
  • quest_host.gnogno
  • quest_reads.gnogno
  • reads.gnogno
  • reviews_actions.gnogno
  • reviews_host.gnogno
  • reviews_reads.gnogno
  • escrow_reads.gnogno
    1package memba_weighted_host23import "strconv"45func (h *Host) escrowConfigJSON() string {6	if h.escrowPolicy == nil {7

    Functions

    not supported for pure packages by the node (vm/qfuncs)

    Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.

    return
    ""
    8 }
    9 return `,"escrowPolicy":{"target":` + quoteJSON(EscrowPath) + `,"successor":` + quoteJSON(string(h.escrowPolicy.Successor())) + `,"resolutionCategory":"financial","unpauseCategory":"financial","feeRecipientCategory":"financial","emergencyPause":true,"returnStagesOnly":true,"invalidatesOtherProposals":true}`
    10}
    11func escrowNumber(n int64) string { return quoteJSON(strconv.FormatInt(n, 10)) }
    12
    13// Only dispute actions name a milestone; for the others it is null, so it
    14// cannot be mistaken for milestone 0.
    15func escrowMilestoneJSON(a EscrowAction) string {
    16 if a.Kind() != EscrowRefundClient && a.Kind() != EscrowPayFreelancer {
    17 return "null"
    18 }
    19 return escrowNumber(int64(a.Milestone()))
    20}
    21func escrowStateJSON(s EscrowState) string {
    22 c := s.Contract
    23 milestones := "["
    24 for i := 0; i < c.Count; i++ {
    25 if i > 0 {
    26 milestones += ","
    27 }
    28 m := c.Milestones[i]
    29 milestones += `{"id":` + escrowNumber(int64(m.ID)) + `,"amount":` + escrowNumber(m.Amount) + `,"status":` + quoteJSON(m.Status) + `,"fundedAt":` + escrowNumber(m.FundedAt) + `,"completedAt":` + escrowNumber(m.CompletedAt) + `,"disputedAt":` + escrowNumber(m.DisputedAt) + `,"preDisputeStatus":` + quoteJSON(m.PreDisputeStatus) + `}`
    30 }
    31 milestones += "]"
    32 return `{"owner":` + quoteJSON(string(s.Owner)) + `,"pendingOwner":` + quoteJSON(string(s.PendingOwner)) + `,"feeRecipient":` + quoteJSON(string(s.FeeRecipient)) + `,"pendingFeeRecipient":` + quoteJSON(string(s.PendingFeeRecipient)) + `,"paused":` + strconv.FormatBool(s.Paused) + `,"pausedAt":` + escrowNumber(s.PausedAt) + `,"exitsReopenAt":` + escrowNumber(s.ExitsReopenAt) + `,"cooldownUntil":` + escrowNumber(s.CooldownUntil) + `,"contract":{"exists":` + strconv.FormatBool(c.Exists) + `,"id":` + quoteJSON(c.ID) + `,"contentHash":` + quoteJSON(c.ContentHash) + `,"status":` + quoteJSON(c.Status) + `,"client":` + quoteJSON(string(c.Client)) + `,"freelancer":` + quoteJSON(string(c.Freelancer)) + `,"count":` + escrowNumber(int64(c.Count)) + `,"milestones":` + milestones + `},"fees":{"rawBPS":` + escrowNumber(s.Fees.RawBPS) + `,"effectiveBPS":` + escrowNumber(s.Fees.EffectiveBPS) + `,"rawTreasury":` + quoteJSON(string(s.Fees.RawTreasury)) + `,"fallbackTreasury":` + quoteJSON(string(s.Fees.FallbackTreasury)) + `,"effectiveTreasury":` + quoteJSON(string(s.Fees.EffectiveTreasury)) + `}}`
    33}
    34func escrowActionJSON(a EscrowAction, s EscrowState) string {
    35 return `{"type":"escrow","target":` + quoteJSON(EscrowPath) + `,"operation":` + quoteJSON(string(a.Kind())) + `,"recipient":` + quoteJSON(string(a.Recipient())) + `,"contractId":` + quoteJSON(a.ContractID()) + `,"milestoneIndex":` + escrowMilestoneJSON(a) + `,"before":` + escrowStateJSON(s) + `}`
    36}
    37