Something
This commit is contained in:
parent
2dde9d75ed
commit
d03d8f9db0
|
@ -2,13 +2,10 @@
|
|||
# SPDX-License-Identifier: Unlicense
|
||||
|
||||
import std/[json, sequtils, tables, uri]
|
||||
import preserves, preserves/jsonhooks, syndicate
|
||||
from syndicate/protocols/dataspace import Observe
|
||||
import preserves, preserves/jsonhooks, syndicate, syndicate/relays
|
||||
|
||||
import ./icalendar_components
|
||||
|
||||
type Observe = dataspace.Observe[Cap]
|
||||
|
||||
type BootArgs {.preservesDictionary.} = object
|
||||
dataspace: Cap
|
||||
|
||||
|
@ -19,8 +16,8 @@ proc importCalendar(location: string): Component =
|
|||
else:
|
||||
var
|
||||
js = parseFile(uri.path)
|
||||
pr = jsonhooks.toPreserveHook(js, void)
|
||||
if not result.fromPreserve(pr):
|
||||
pr = jsonhooks.toPreservesHook(js)
|
||||
if not result.fromPreserves(pr):
|
||||
# TODO: convert directly from JsonNode
|
||||
raise newException(ValueError, "Preserves was not a valid iCalendar component")
|
||||
if result.label != "vcalendar":
|
||||
|
@ -50,9 +47,9 @@ proc serve(turn: var Turn; url: string): Cap =
|
|||
ds
|
||||
|
||||
runActor("icalendar_actor") do (root: Cap; turn: var Turn):
|
||||
connectStdio(root, turn)
|
||||
connectStdio(turn, root)
|
||||
stderr.writeLine "connected stdio to ", root
|
||||
during(turn, root, ?BootArgs) do (ds: Cap):
|
||||
during(turn, root, ?:BootArgs) do (ds: Cap):
|
||||
stderr.writeLine "got dataspace at ", ds
|
||||
during(turn, ds, ?Observe(pattern: !CalendarDataspace) ?? {0: grabLit()}) do (url: string):
|
||||
let cap = serve(turn, url)
|
||||
|
|
Loading…
Reference in New Issue