dog-and-duck/docs/codox/clj-activitypub.core.html
2022-12-19 23:39:24 +00:00

3 lines
10 KiB
HTML

<!DOCTYPE html PUBLIC ""
"">
<html><head><meta charset="UTF-8" /><title>clj-activitypub.core documentation</title><link rel="stylesheet" type="text/css" href="css/default.css" /><link rel="stylesheet" type="text/css" href="css/highlight.css" /><script type="text/javascript" src="js/highlight.min.js"></script><script type="text/javascript" src="js/jquery.min.js"></script><script type="text/javascript" src="js/page_effects.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body><div id="header"><h2>Generated by <a href="https://github.com/weavejester/codox">Codox</a></h2><h1><a href="index.html"><span class="project-title"><span class="project-name">Dog-and-duck</span> <span class="project-version">0.1.0-SNAPSHOT</span></span></a></h1></div><div class="sidebar primary"><h3 class="no-link"><span class="inner">Project</span></h3><ul class="index-link"><li class="depth-1 "><a href="index.html"><div class="inner">Index</div></a></li></ul><h3 class="no-link"><span class="inner">Topics</span></h3><ul><li class="depth-1 "><a href="Using_ActivityPub.html"><div class="inner"><span>Using ActivityPub</span></div></a></li><li class="depth-1 "><a href="intro.html"><div class="inner"><span>The Old Dog and Duck</span></div></a></li></ul><h3 class="no-link"><span class="inner">Namespaces</span></h3><ul><li class="depth-1"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>clj-activitypub</span></div></div></li><li class="depth-2 branch current"><a href="clj-activitypub.core.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>core</span></div></a></li><li class="depth-2"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>internal</span></div></div></li><li class="depth-3 branch"><a href="clj-activitypub.internal.crypto.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>crypto</span></div></a></li><li class="depth-3 branch"><a href="clj-activitypub.internal.http-util.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>http-util</span></div></a></li><li class="depth-3"><a href="clj-activitypub.internal.thread-cache.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>thread-cache</span></div></a></li><li class="depth-2"><a href="clj-activitypub.webfinger.html"><div class="inner"><span class="tree" style="top: -114px;"><span class="top" style="height: 123px;"></span><span class="bottom"></span></span><span>webfinger</span></div></a></li><li class="depth-1"><div class="no-link"><div class="inner"><span class="tree" style="top: -207px;"><span class="top" style="height: 216px;"></span><span class="bottom"></span></span><span>dog-and-duck</span></div></div></li><li class="depth-2"><div class="no-link"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>quack</span></div></div></li><li class="depth-3"><a href="dog-and-duck.quack.quack.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>quack</span></div></a></li><li class="depth-2"><div class="no-link"><div class="inner"><span class="tree" style="top: -52px;"><span class="top" style="height: 61px;"></span><span class="bottom"></span></span><span>scratch</span></div></div></li><li class="depth-3 branch"><a href="dog-and-duck.scratch.core.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>core</span></div></a></li><li class="depth-3 branch"><a href="dog-and-duck.scratch.parser.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>parser</span></div></a></li><li class="depth-3"><a href="dog-and-duck.scratch.scratch.html"><div class="inner"><span class="tree"><span class="top"></span><span class="bottom"></span></span><span>scratch</span></div></a></li></ul></div><div class="sidebar secondary"><h3><a href="#top"><span class="inner">Public Vars</span></a></h3><ul><li class="depth-1"><a href="clj-activitypub.core.html#var-activity"><div class="inner"><span>activity</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-actor"><div class="inner"><span>actor</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-auth-headers"><div class="inner"><span>auth-headers</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-config"><div class="inner"><span>config</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-fetch-user"><div class="inner"><span>fetch-user</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-gen-signature-header"><div class="inner"><span>gen-signature-header</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-obj"><div class="inner"><span>obj</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-parse-account"><div class="inner"><span>parse-account</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-signature-headers"><div class="inner"><span>signature-headers</span></div></a></li><li class="depth-1"><a href="clj-activitypub.core.html#var-with-config"><div class="inner"><span>with-config</span></div></a></li></ul></div><div class="namespace-docs" id="content"><h1 class="anchor" id="top">clj-activitypub.core</h1><div class="doc"><div class="markdown"><p><strong>TODO</strong>: write docs</p></div></div><div class="public anchor" id="var-activity"><h3>activity</h3><h4 class="type">multimethod</h4><div class="usage"></div><div class="doc"><div class="markdown"><p>Produces a map representing an ActivityPub activity which can be serialized directly to JSON in the form expected by the ActivityStreams 2.0 spec. See <a href="https://www.w3.org/TR/activitystreams-vocabulary/">https://www.w3.org/TR/activitystreams-vocabulary/</a> for reference.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L118">view source</a></div></div><div class="public anchor" id="var-actor"><h3>actor</h3><div class="usage"><code>(actor {:keys [user-id username public-key]})</code></div><div class="doc"><div class="markdown"><p>Accepts a config, and returns a map in the form expected by the ActivityPub spec. See <a href="https://www.w3.org/TR/activitypub/#actor-objects">https://www.w3.org/TR/activitypub/#actor-objects</a> for reference.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L44">view source</a></div></div><div class="public anchor" id="var-auth-headers"><h3>auth-headers</h3><div class="usage"><code>(auth-headers config {:keys [body headers]})</code></div><div class="doc"><div class="markdown"><p>Given a config and request map of {:body … :headers …}, returns the original set of headers with Signature and Digest attributes appended.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L86">view source</a></div></div><div class="public anchor" id="var-config"><h3>config</h3><div class="usage"><code>(config {:keys [domain username username-route public-key private-key], :or {username-route "/users/", public-key nil, private-key nil}})</code></div><div class="doc"><div class="markdown"><p>Creates hash of computed data relevant for most ActivityPub utilities.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L8">view source</a></div></div><div class="public anchor" id="var-fetch-user"><h3>fetch-user</h3><div class="usage"><code>(fetch-user user-id)</code></div><div class="doc"><div class="markdown"><p>Fetches the customer account details located at user-id from a remote server. Will return cached results if they exist in memory.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L32">view source</a></div></div><div class="public anchor" id="var-gen-signature-header"><h3>gen-signature-header</h3><div class="usage"><code>(gen-signature-header config headers)</code></div><div class="doc"><div class="markdown"><p>Generates a HTTP Signature string based on the provided map of headers.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L71">view source</a></div></div><div class="public anchor" id="var-obj"><h3>obj</h3><h4 class="type">multimethod</h4><div class="usage"></div><div class="doc"><div class="markdown"><p>Produces a map representing an ActivityPub object which can be serialized directly to JSON in the form expected by the ActivityStreams 2.0 spec. See <a href="https://www.w3.org/TR/activitystreams-vocabulary/">https://www.w3.org/TR/activitystreams-vocabulary/</a> for reference.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L98">view source</a></div></div><div class="public anchor" id="var-parse-account"><h3>parse-account</h3><div class="usage"><code>(parse-account handle)</code></div><div class="doc"><div class="markdown"><p>Given an ActivityPub handle (e.g. @jahfer@mastodon.social), produces a map containing {:domain … :username …}.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L23">view source</a></div></div><div class="public anchor" id="var-signature-headers"><h3>signature-headers</h3><div class="usage"></div><div class="doc"><div class="markdown"><p><strong>TODO</strong>: write docs</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L59">view source</a></div></div><div class="public anchor" id="var-with-config"><h3>with-config</h3><div class="usage"><code>(with-config config)</code></div><div class="doc"><div class="markdown"><p>Returns curried forms of the #activity and #obj multimethods in the form {:activity … :obj …}, with the initial parameter set to config.</p></div></div><div class="src-link"><a href="https://github.com/simon-brooke/dog-and-duck/blob/master/src/clj_activitypub/core.clj#L138">view source</a></div></div></div></body></html>