workspace "IXOlist | Token Offer | Smart Contracts" { !identifiers hierarchical model { properties { "structurizr.groupSeparator" "/" } action = softwareSystem "Action" { !docs "../../../../../../../info/doc/action/index.md" group "System" { doc_type = container "Doc type" { !docs "../../../../../../../../../../../../info/doc/action/system/doc_type" group "System" { doctypeadd = component "doctypeadd" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/doc_type/doctypeadd" tags "Smart contract component" } doctypechng = component "doctypechng" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/doc_type/doctypechng" tags "Smart contract component" } doctyperm = component "doctyperm" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/doc_type/doctyperm" tags "Smart contract component" } docvalid = component "docvalid" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/doc_type/docvalid" tags "Smart contract component" } vldpriceset = component "vldpriceset" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/doc_type/vldpriceset" tags "Smart contract component" } } tags "Smart contract container" } round_type = container "Round type" { !docs "../../../../../../../../../../../../info/doc/action/system/round_type" group "System" { change = component "change" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/round_type/change" tags "Smart contract component" } create = component "create" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/round_type/create" tags "Smart contract component" } remove = component "remove" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/round_type/remove" tags "Smart contract component" } } tags "Smart contract container" } setting = container "Setting" { !docs "../../../../../../../../../../../../info/doc/action/system/setting" group "System" { bankset = component "bankset" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/setting/bankset" tags "Smart contract component" } depositset = component "depositset" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/setting/depositset" tags "Smart contract component" } durationset = component "durationset" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/setting/durationset" tags "Smart contract component" } paytokenset = component "paytokenset" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/setting/paytokenset" tags "Smart contract component" } rateset = component "rateset" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/setting/rateset" tags "Smart contract component" } rmdetailpart = component "rmdetailpart" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/system/setting/rmdetailpart" tags "Smart contract component" } } tags "Smart contract container" } } group "Creator" { detail = container "Detail" { !docs "../../../../../../../../../../../../info/doc/action/creator/detail" group "Creator" { detailadd = component "detailadd" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detailadd" tags "Smart contract component" } detailaddref = component "detailaddref" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detailaddref/" tags "Smart contract component" } detaildesc = component "detaildesc" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detaildesc" tags "Smart contract component" } detailimg = component "detailimg" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detailimg" tags "Smart contract component" } detailrm = component "detailrm" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detailrm" tags "Smart contract component" } detailrmref = component "detailrmref" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detailrmref" tags "Smart contract component" } detailsumm = component "detailsumm" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detailsumm" tags "Smart contract component" } detailtitle = component "detailtitle" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/detail/detailtitle" tags "Smart contract component" } } tags "Smart contract container" } doc = container "Doc" { !docs "../../../../../../../../../../../../info/doc/action/creator/doc/index.md" group "Creator" { docadd = component "docadd" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/doc/docadd/index.md" tags "Smart contract component" } docchange = component "docchange" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/doc/docchange" tags "Smart contract component" } docchangeurl = component "docchangeurl" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/doc/docchangeurl" tags "Smart contract component" } submit-4-validation = component "submit 4 validation" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/doc/submit-4-validation" tags "Smart contract component" } } tags "Smart contract container" } external_round = container "External round" { !docs "../../../../../../../../../../../../info/doc/action/creator/external_round" group "Creator" { exrndcreate = component "exrndcreate" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/external_round/exrndcreate" tags "Smart contract component" } exrndmodify = component "exrndmodify" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/external_round/exrndmodify" tags "Smart contract component" } exrndremove = component "exrndremove" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/external_round/exrndremove" tags "Smart contract component" } } tags "Smart contract container" } group = container "Group" { !docs "../../../../../../../../../../../../info/doc/action/creator/group" group "Creator" { groupaddiv = component "groupaddiv" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/group/groupaddiv" tags "Smart contract component" } groupblock = component "groupblock" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/group/groupblock" tags "Smart contract component" } groupcreate = component "groupcreate" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/group/groupcreate" tags "Smart contract component" } grouplimits = component "grouplimits" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/group/grouplimits" tags "Smart contract component" } groupremove = component "groupremove" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/group/groupremove" tags "Smart contract component" } grouprmdiv = component "grouprmdiv" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/group/grouprmdiv" tags "Smart contract component" } } tags "Smart contract container" } offer = container "Offer" { !docs "../../../../../../../../../../../../info/doc/action/creator/offer" group "Creator" { addblklist = component "addblklist" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/addblklist" tags "Smart contract component" } addmember = component "addmember" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/addmember" tags "Smart contract component" } addwhtlist = component "addwhtlist" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/addwhtlist" tags "Smart contract component" } close = component "close" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/close" tags "Smart contract component" } create = component "create" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/create" tags "Smart contract component" } modifytype = component "modifytype" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/modifytype" tags "Smart contract component" } remove = component "remove" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/remove" tags "Smart contract component" } rmmember = component "rmmember" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/rmmember" tags "Smart contract component" } rmusrblklist = component "rmusrblklist" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/rmusrblklist" tags "Smart contract component" } rmusrwhtlist = component "rmusrwhtlist" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/offer/rmusrwhtlist" tags "Smart contract component" } } tags "Smart contract container" } round = container "Round" { !docs "../../../../../../../../../../../../info/doc/action/creator/round" group "Creator" { publish = component "publish" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/publish" tags "Smart contract component" } rndaddprice = component "rndaddprice" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndaddprice" tags "Smart contract component" } rndcreate = component "rndcreate" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndcreate" tags "Smart contract component" } rnddate = component "rnddate" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rnddate" tags "Smart contract component" } rndlimit = component "rndlimit" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndlimit" tags "Smart contract component" } rndmodifypub = component "rndmodifypub" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndmodifypub" tags "Smart contract component" } rndmodifyref = component "rndmodifyref" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndmodifyref" tags "Smart contract component" } rndoffered = component "rndoffered" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndoffered" tags "Smart contract component" } rndremove = component "rndremove" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndremove" tags "Smart contract component" } rndrmprice = component "rndrmprice" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/rndrmprice" tags "Smart contract component" } unpublish = component "unpublish" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/creator/round/unpublish" tags "Smart contract component" } } tags "Smart contract container" } } group "User" { round-participation = container "Participation on the round" { !docs "../../../../../../../../../../../../info/doc/action/user/round-participation" group "User" { accepttoken = component "accepttoken" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/user/round-participation/accepttoken" tags "Smart contract component" } openpool = component "openpool" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/user/round-participation/openpool" tags "Smart contract component" } refundclltrl = component "refundclltrl" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/user/round-participation/refundclltrl" tags "Smart contract component" } refundtoken = component "refundtoken" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/user/round-participation/refundtoken" tags "Smart contract component" } take-part = component "take-part" { !docs "../../../../../../../../../../../../../../../../../info/doc/action/user/round-participation/take-part" tags "Smart contract component" } } tags "Smart contract container" } } tags "Smart contract softwaresystem" } table = softwareSystem "Table" { !docs "../../../../../../../info/doc/table" details = container "details" { !docs "../../../../../../../../../../../../info/doc/table/details" tags "Smart contract container" } doc-type = container "doc-type" { !docs "../../../../../../../../../../../../info/doc/table/doc-type" tags "Smart contract container" } docs = container "docs" { !docs "../../../../../../../../../../../../info/doc/table/docs" tags "Smart contract container" } external-rounds = container "external-rounds" { !docs "../../../../../../../../../../../../info/doc/table/external-rounds" tags "Smart contract container" } feedback = container "feedback" { !docs "../../../../../../../../../../../../info/doc/table/feedback" tags "Smart contract container" } group = container "group" { !docs "../../../../../../../../../../../../info/doc/table/group" tags "Smart contract container" } member = container "member" { !docs "../../../../../../../../../../../../info/doc/table/member" tags "Smart contract container" } offer = container "offer" { !docs "../../../../../../../../../../../../info/doc/table/offer" tags "Smart contract container" } round = container "round" { !docs "../../../../../../../../../../../../info/doc/table/round" tags "Smart contract container" } round-types = container "round-types" { !docs "../../../../../../../../../../../../info/doc/table/round-types" tags "Smart contract container" } settings = container "settings" { !docs "../../../../../../../../../../../../info/doc/table/settings" tags "Smart contract container" } stat = container "stat" { !docs "../../../../../../../../../../../../info/doc/table/stat" tags "Smart contract container" } tags "Smart contract softwaresystem" } role = softwareSystem "Role" { !docs "../../../../../../../info/doc/role" guide = container "guide" { !docs "../../../../../../../../../../../../info/doc/role/guide" tags "Smart contract container" } type = container "type" { !docs "../../../../../../../../../../../../info/doc/role/type" admin = component "admin" { !docs "../../../../../../../../../../../../../../../../../info/doc/role/type/admin" tags "Smart contract component" } moderator = component "moderator" { !docs "../../../../../../../../../../../../../../../../../info/doc/role/type/moderator" tags "Smart contract component" } tags "Smart contract container" } tags "Smart contract softwaresystem" } group "IXOlist" { token_offer = softwareSystem "Token Offer" { description "Smart Contracts" tags "Smart contract softwaresystem" url "https://ixolist.netlify.app/apps/token-offer/" } } #!include \ # "./4-code/index.dsl" } views { systemLandscape "ixolist-token-offer-smart_contract-systemlandscape" { title "IXOlist | Token Offer | Smart Contract" include "token_offer" } systemcontext "action" "IXOlist-token_offer-smart_contract-systemcontext" { title "IXOlist | Token Offer | Smart contracts" # include "object identifier" include "*" include "table" include "role" # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } container "action" "ixolist-token_offer-smart_contract-action-container" { title "IXOlist | Token Offer | Action" include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } container "role" "ixolist-token_offer-smart_contract-role-container" { title "IXOlist | Token Offer # Role" include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } container "table" "ixolist-token_offer-smart_contract-table-container" { title "IXOlist | Token Offer # Table" include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.detail" "ixolist-token_offer-smart_contract-action-creator-detail-component" { title "IXOlist | Token Offer | Action | Detail # Creator" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.doc" "ixolist-token_offer-smart_contract-action-creator-doc-component" { title "IXOlist | Token Offer | Action | Doc # Creator" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.external_round" "ixolist-token_offer-smart_contract-action-creator-external-component" { title "IXOlist | Token Offer | Action | External Round # Creator" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.group" "ixolist-token_offer-smart_contract-action-creator-group-component" { title "IXOlist | Token Offer | Action | Group # Creator" properties { "structurizr.softwareSystemBoundaries" "true" } include * #include action.group.groupaddiv # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.offer" "ixolist-token_offer-smart_contract-action-creator-offer-component" { title "IXOlist | Token Offer | Action | Offer # Creator" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.round" "ixolist-token_offer-smart_contract-action-creator-round-component" { title "IXOlist | Token Offer | Action | Round # Creator" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.doc_type" "ixolist-token_offer-smart_contract-action-system-doc_type-component" { title "IXOlist | Token Offer | Action | Doc Type # System" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.round_type" "ixolist-token_offer-smart_contract-action-system-round_type-component" { title "IXOlist | Token Offer | Action | Round Type # System" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.setting" "ixolist-token_offer-smart_contract-action-system-setting-component" { title "IXOlist | Token Offer | Action | Setting # System" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "action.round-participation" "ixolist-token_offer-smart_contract-action-system-round-participation-component" { title "IXOlist | Token Offer | Action | Round Participation # System" properties { "structurizr.softwareSystemBoundaries" "true" } include * # include "identifier relstionship -> identifier relstionship" # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } component "role.type" "ixolist-token_offer-smart_contract-role-type-component" { title "IXOlist | Token Offer | Role # Type" include * # include "identifier relstionship -> identifier relstionship" properties { "structurizr.softwareSystemBoundaries" "true" } # exclude "object identifier" # exclude "identifier relstionship -> identifier relstionship" } #!include \ #"./4-code/index.dsl" styles { element "Smart contract softwaresystem" { shape "RoundedBox" width "450" height "300" background "white" # opacity "100" } element "Smart contract softwaresystem" { border "solid" strokeWidth "5" stroke "#9011bb" } element "Smart contract softwaresystem" { description true metadata true # icon } #!include \ # "./properties/index.dsl" element "Smart contract softwaresystem" { fontSize "26" color "#9011bb" } element "Smart contract container" { shape "RoundedBox" width "450" height "300" background "white" # opacity "100" } element "Smart contract container" { border "solid" strokeWidth "5" stroke "#b044d5" } element "Smart contract container" { description true metadata true # icon } #!include \ # "./properties/index.dsl" element "Smart contract container" { fontSize "26" color "#b044d5" } element "Smart contract component" { shape "RoundedBox" width "450" height "300" background "white" # opacity "100" } element "Smart contract component" { border "solid" strokeWidth "5" stroke "#d584f0" } element "Smart contract component" { description true metadata true # icon } #!include \ # "./properties/index.dsl" element "Smart contract component" { fontSize "26" color "#d584f0" } } terminology { } } }