fission-codes / webnative-elm / Webnative.FileSystem


type alias AssociatedIdentity =
{ rootDID : String
, username : Maybe String 
}


type Base
    = AppData Webnative.AppInfo.AppInfo
    | Private
    | Public

Base of the WNFS action.


type alias Entry =
{ cid : Webnative.CID.CID
, name : String
, kind : Webnative.Path.Kind
, size : Basics.Int 
}

Directory Entry.


type FileSystem

acceptShare : FileSystem -> { shareId : String, sharedBy : String } -> Webnative.Task.Task ()

account : FileSystem -> Webnative.Task.Task AssociatedIdentity

deactivate : FileSystem -> Webnative.Task.Task ()

decoder : Json.Decode.Decoder FileSystem

directoryEntriesDecoder : Json.Decode.Decoder (List Entry)

encode : FileSystem -> Json.Encode.Value

exists : FileSystem -> Base -> Webnative.Path.Path Webnative.Path.File -> Webnative.Task.Task Basics.Bool

historyStep : FileSystem -> Webnative.Task.Task ()

load : Webnative.Program.Program -> { username : String } -> Webnative.Task.Task FileSystem

ls : FileSystem -> Base -> Webnative.Path.Path Webnative.Path.Directory -> Webnative.Task.Task (List Entry)

mkdir : FileSystem -> Base -> Webnative.Path.Path Webnative.Path.Directory -> Webnative.Task.Task ()

mv : FileSystem -> Base -> { from : Webnative.Path.Path k, to : Webnative.Path.Path k } -> Webnative.Task.Task ()

publish : FileSystem -> Webnative.Task.Task Webnative.CID.CID

read : FileSystem -> Base -> Webnative.Path.Path Webnative.Path.File -> Webnative.Task.Task Bytes

readUtf8 : FileSystem -> Base -> Webnative.Path.Path Webnative.Path.File -> Webnative.Task.Task String

ref : FileSystem -> Json.Encode.Value

rm : FileSystem -> Base -> Webnative.Path.Path k -> Webnative.Task.Task ()

sharePrivate : FileSystem -> List (Webnative.Path.Path k) -> { shareWith : List String } -> Webnative.Task.Task ()

symlink : FileSystem -> Base -> { at : Webnative.Path.Path Webnative.Path.Directory, name : String, referringTo : Webnative.Path.Path k } -> Webnative.Task.Task ()

withRef : FileSystem -> Json.Encode.Value -> Json.Encode.Value

withRefSplat : FileSystem -> Json.Encode.Value -> Json.Encode.Value

write : FileSystem -> Base -> Webnative.Path.Path Webnative.Path.File -> Bytes -> Webnative.Task.Task ()

writeUtf8 : FileSystem -> Base -> Webnative.Path.Path Webnative.Path.File -> String -> Webnative.Task.Task ()