Transaction

3DFFA7B8C750F8…745DCA3EC372

Block 25,916 · index 0 · indexed

Summary

Hash
3DFFA7B8C750F85FA328881D8314728BA1504313BC15EAF802C5745DCA3EC372
Block
25,916
Size
3895 bytes
Gas used
9,495,833 / 11,395,059
Fee
1000000ugnot
Memo
gnopublish
Status
success

Messages

#1AddPackagegno.land/p/moul/safe/v09 arguments

Arguments · 9

  1. #1safe
  2. #2README.md
  3. #3# `gno.land/p/moul/safe/v0` _TODO: describe this package._ <!-- BEGIN GNOCONTRACTS FOOTER (generated by `make readmes`; do not edit below) --> --- Part of **[moul/gno-contracts](https://github.com/moul/gno-contracts)** — moul's versioned gno.land contracts. See the repository for the full catalog, build/test tooling, and usage. > ⚠️ **Disclaimer:** provided as-is, without warranty; not security-audited. Full disclaimer: [DISCLAIMER](https://github.com/moul/gno-contracts/blob/main/DISCLAIMER.md). <!-- END GNOCONTRACTS FOOTER -->
  4. #4gnomod.toml
  5. #5module = "gno.land/p/moul/safe/v0" gno = "0.9"
  6. #6safe.gno
  7. #7// Package safe is inspired by Gnosis Safe package safe import ( "chain/runtime/unsafe" ) // Gnosis safe style using this with threshold // : affMember + update threshold at the same time type Safe interface { Name() string Members() []address Threshold() uint Size() uint NextProposal() Proposal UpcomingProposals(page uint) (props []Proposal, total uint) PreviousProposals(page uint) (props []Proposal, total uint) // balances (native, grc20, grc721) ProposeAddingMember(addr address, newThreshold uint) (prop Proposal, err error) ProposeRemovingMember(addr address, newThreshold uint) (prop Proposal, err error) ProposeUpdatingThreshold(newThreshold uint) (prop Proposal, err error) // ProposeClosure(cl func()) (prop Proposal, err error) // ProposeBankXXX() // ProposeGRC20XXX() // ProposeGRC721XXX() GetProposal(id uint) Proposal ApproveProposal(p Proposal) error ExecuteProposal(p Proposal) error CancelProposal(p Proposal) error // XXX: should be ProposeToCancel? Render(path string) string } type Proposal interface { ID() uint Active() bool Executed() bool Voters() []address } func NewSafe() Safe { caller := unsafe.PreviousRealm().Address() return safe{ members: []address{caller}, threshold: 1, prevProps: []Proposal{}, nextProps: []Proposal{}, } } type safe struct { name string members []address // member addresses threshold uint prevProps []Proposal // executed/cancelled proposals nextProps []Proposal // upcoming proposals } func (s safe) String() string { panic("not implemented") } func (s safe) Name() string { return s.name } func (s safe) Members() []address { return s.members } func (s safe) Threshold() uint { return s.threshold } func (s safe) Size() uint { return uint(len(s.members)) } func (s safe) NextProposal() Proposal { panic("not implemented") } func (s safe) UpcomingProposals(page uint) (props []Proposal, total uint) { panic("not implemented") } func (s safe) PreviousProposals(page uint) (props []Proposal, total uint) { panic("not implemented") } func (s safe) ProposeAddingMember(addr address, newThreshold uint) (prop Proposal, err error) { panic("not implemented") } func (s safe) ProposeRemovingMember(addr address, newThreshold uint) (prop Proposal, err error) { panic("not implemented") } func (s safe) ProposeUpdatingThreshold(newThreshold uint) (prop Proposal, err error) { panic("not implemented") } func (s safe) GetProposal(id uint) Proposal { panic("not implemented") } func (s safe) ApproveProposal(p Proposal) error { panic("not implemented") } func (s safe) ExecuteProposal(p Proposal) error { panic("not implemented") } func (s safe) CancelProposal(p Proposal) error { panic("not implemented") } func (s safe) Render(path string) string { panic("not implemented") } type proposal struct{} func (p proposal) String() string { panic("not implemented") }
  8. #8/gno.MemPackageType
  9. #9 MPUserProd

Result log

msg:0,success:true,log:,events:[]

← Back to block 25,916