From 5f30deabcd96062306b389a36dea270c17f19f74 Mon Sep 17 00:00:00 2001 From: Benjamin Bengfort Date: Wed, 13 Sep 2023 21:34:01 -0500 Subject: [PATCH] TRP Integration Docs (#154) --- docs/config.toml | 22 ++- docs/content/openvasp/_index.en.md | 71 +++++++++ docs/content/openvasp/bridge.en.md | 182 +++++++++++++++++++++++ docs/content/openvasp/client.en.md | 123 +++++++++++++++ docs/content/openvasp/trp_flow.mmd | 23 +++ docs/layouts/partials/custom-header.html | 1 + docs/static/css/syntax.css | 86 +++++++++++ docs/static/img/trp_flow.png | Bin 0 -> 127278 bytes 8 files changed, 504 insertions(+), 4 deletions(-) create mode 100644 docs/content/openvasp/_index.en.md create mode 100644 docs/content/openvasp/bridge.en.md create mode 100644 docs/content/openvasp/client.en.md create mode 100644 docs/content/openvasp/trp_flow.mmd create mode 100644 docs/layouts/partials/custom-header.html create mode 100644 docs/static/css/syntax.css create mode 100644 docs/static/img/trp_flow.png diff --git a/docs/config.toml b/docs/config.toml index 1892d558..f2927cfd 100644 --- a/docs/config.toml +++ b/docs/config.toml @@ -143,7 +143,21 @@ enableMissingTranslationPlaceholders = false weight = 19 [markup] -[markup.goldmark] -[markup.goldmark.renderer] -unsafe = false - + [markup.goldmark] + [markup.goldmark.renderer] + unsafe = false + + [markup.highlight] + anchorLineNos = false + codeFences = true + guessSyntax = false + hl_Lines = '' + hl_inline = false + lineAnchors = '' + lineNoStart = 1 + lineNos = false + lineNumbersInTable = true + noClasses = true + noHl = false + style = 'nord' + tabWidth = 4 \ No newline at end of file diff --git a/docs/content/openvasp/_index.en.md b/docs/content/openvasp/_index.en.md new file mode 100644 index 00000000..d8c9bb02 --- /dev/null +++ b/docs/content/openvasp/_index.en.md @@ -0,0 +1,71 @@ +--- +title: OpenVASP/TRP Integration +date: 2022-06-17T09:15:46-04:00 +lastmod: 2022-06-17T16:53:39-04:00 +description: "Documentation on how to integrate TRISA with the OpenVASP/TRP Protocol" +weight: 45 +--- + +The [OpenVASP Association](https://www.openvasp.org/) implements an open protocol for travel rule called [TRP](https://www.openvasp.org/trp) that is similar to TRISA but puts more focus on ease of information sharing and human-in-the-loop review than on verified counterparties and cryptography. TRISA and OpenVASP have worked together over the past several months to create a "bridge" that will allow partial compatibility between the two protocols. This page describes how implementers of TRISA nodes might integrate the bridge in their node to respond to TRP requests. + +For more information on the TRP protocol, please refer to the [TRP Documentation](https://gitlab.com/OpenVASP/travel-rule-protocol/-/blob/master/core/specification.md?ref_type=heads). + +## TRP Workflow + +![TRP Workflow](/img/trp_flow.png) + +The TRP workflow uses HTTPS `POST` requests with JSON payloads to facilitate information exchange. The initial request endpoint is defined with an LNURL or Travel Address endpoint that the beneficiary must request from their VASP and send to the originator. Subsequent request endpoints are defined with callback URLs in the request itself. HTTP error codes and JSON payloads are used to communicate success or failure back to the counterparty. + +In principle, then, a TRISA node must add an HTTP service to its node to accept and respond to these POST requests. TRISA has implemented [handlers and middleware](https://pkg.go.dev/github.com/trisacrypto/trisa@v0.4.0/pkg/openvasp) in the `trisacrypto/trisa` go package to make it easier to add a service to your TRISA node and to translate TRISA data structures into TRP data structures. + +### Next Steps: + +1. [Integrating a TRP Bridge Handler into your TRISA node]({{< ref "bridge" >}}) +2. [Making Outgoing TRP Requests]({{< ref "client" >}}) + +## Considerations + +As a TRISA node implementer, you have registered for mTLS certificates with TRISA's Global Directory Service and went through a rigorous KYC process to be verified as a VASP that must exchange PII information to comply with the Travel Rule. You are probably used to using the GDS to lookup counterparty endpoints and you've probably experienced significant time and effort implementing key management for the cryptographic requirements that TRISA uses for non-repudiation and secure storage. Counterparties that implement TRP do not have these same requirements. + +Therefore, as you implement your TRP integration, you need to consider the following policies and integration standards. + +1. **mTLS is a core part of TRP, however, TRP does not specify a Certificate Authority.** Your implementation must consider whether it wants to perform TRP only with TRISA issued certificates or if it is willing to allow other public CAs such as Verisign or Google. +2. **There is no directory of TRP VASPs, TRP discovery is facilitated by Travel Addresses.** TRP uses [Travel Addresses](https://www.21analytics.ch/blog/how-the-trp-travel-address-solves-the-fatf-travel-rule/) to solve counterparty identification. The TRISA bridge is able to parse both LNURLs and the newer Travel Address format, however for complete TRP integration, you will have to supply your accounts with Travel Addresses so that other TRP implementers can reach you as a beneficiary counterparty. +3. **TRP only supports transport-level cryptography, not payload-level cryptography.** There are three levels of cryptography supported by the TRISA bridge: no-cryptography, partial, insecure TRISA envelopes (encrypted but not sealed), and full TRISA compatibility. The first level is plain-vanill TRP and the second two levels are implemented using [TRP Extensions](https://gitlab.com/OpenVASP/travel-rule-protocol/-/tree/master/extensions). + +### For TRP Implementers + +Welcome, thank you for checking out TRISA! The best thing you can do for integration is to register for TRISA mTLS certificates on [vaspdirectory.net](https://vaspdirectory.net). If you perform mTLS with TRISA VASPs using TRISA certificates, that will help a lot in establishing trust and verification for consideration #1 above. + +If you're interested in implementing the extensions for key exchange and parsing secure envelopes, you're more than welcome to use the Golang code in this library to get you started! If you're implementation is in another language, [please let us know](https://github.com/trisacrypto/trisa/issues) so that we can create library code to help you implement secure PII transfers. + +Please see the [Getting Started Guide]({{< ref "getting-started" >}}) for more on how to implement TRISA-specific protocol details using the extensions. + +### Policies + +Given the above considerations, TRISA implementers will have to consider the following policies before TRP integration: + +1. Allow certificate authorities other than the TRISA authority for mTLS? +2. Allow native TRP transfers without signatures or payload cryptography? +3. Allow [TRP message signing](https://gitlab.com/OpenVASP/travel-rule-protocol/-/blob/master/extensions/message-signing.md?ref_type=heads) for non-repudiation? +4. Require either TRISA or TRP message signing for non-repudiation? +5. Require public key exchange and secure envelope extension? + +The answer to these policies considerations will determine how permissive your node is to accepting different types of transfers, but at the same time create more transfer cases that need to be handled by your node. + +### Protocol Comparison + +| Feature | TRISA | OpenVASP TRP | +|----------------------|-----------------------------------------------------------------------|----------------------------------------------| +| Governance | Delaware non-profit and technical working group | Swiss non-profit and technical working group | +| Non Repudiation | Signed Envelopes | Signed JSON | +| Data at Rest | Secure Envelopes | | +| Transport Encryption | mTLS 1.3 | mTLS 1.3 | +| Exceptions/Errors | Error codes | HTTP protocol errors | +| Message | Protocol Buffers | JSON | +| Data Types | IVMS101, PayString, Generic | IVMS101 | +| Authentication | X.509 KYV Certs | | +| Transport Protocol | gRPC | HTTPS | +| Addressing | VASP/Account | VASP/Account Travel Address (LNURL) | +| Discovery | Sender provided, receiver verified, blockchain analytics, round robin | Sender provided | +| Onboarding | TRIXO Questionnaire/GDS | | \ No newline at end of file diff --git a/docs/content/openvasp/bridge.en.md b/docs/content/openvasp/bridge.en.md new file mode 100644 index 00000000..054e1407 --- /dev/null +++ b/docs/content/openvasp/bridge.en.md @@ -0,0 +1,182 @@ +--- +title: "TRP Bridge" +date: 2023-09-13T16:49:59-05:00 +lastmod: 2023-09-13T16:49:59-05:00 +description: "Integrating a TRP server into your TRISA node" +weight: 10 +--- + +The TRP Bridge implements [`http.Handler`](https://pkg.go.dev/net/http#Handler) objects for each TRP request type and which can be passed to a basic [`http.Server`](https://pkg.go.dev/net/http#Server) and easily built into your TRISA node. A minimal example that simply logs incoming requests and return no error is below: + +```golang +package main + +import ( + "log" + "net/http" + + "github.com/trisacrypto/trisa/pkg/openvasp" +) + +// TRPHandler implements both the InquiryHandler and the Confirmation Handler interfaces +type TRPHandler struct{} + + +// OnInquiry implements the InquiryHandler interface and is used to respond to TRP +// transfer inquiry requests that initiate or conclude the TRP protocol. +func (t *TRPHandler) OnInquiry(in *openvasp.Inquiry) (*openvasp.InquiryResolution, error) { + + // TODO: add your Transfer Inquiry code here! + log.Printf( + "received trp inquiry with request identifier %q\n", + in.TRP.RequestIdentifier + ) + return nil, nil +} + +// OnConfirmation implements the ConfirmationHandler interface and is used to respond to +// TRP callbacks from the beneficiary VASP. +func (t *TRPHandler) OnConfirmation(in *openvasp.Confirmation) error { + + // TODO: add your Transfer Confirmation code here! + log.Printf( + "received trp confirmation with request identifier %q\n", + in.TRP.RequestIdentifier + ) + return nil +} + +func main() { + // Create a new handler object + handler := &TRPHandler{} + + // Create a mux to route requests to different paths to different handlers. + mux := http.NewServeMux() + mux.Handle("/transfers", openvasp.TransferInquiry(handler)) + mux.Handle("/confirm", openvasp.TransferConfirmation(handler)) + + log.Printf( + "waiting for TRP requests with API version %s at http://localhost:8080\n", + openvasp.APIVersion + ) + + // Serve the TRP API server on port 8080. In production applications you would + // likely configure mTLS and TLS termination at the server first. + http.ListenAndServe(":8080", mux) +} +``` + +## Transfer Inquiry + +The [`openvasp.TransferInquiry`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#TransferInquiry) function accepts an object that implements the [`openvasp.InquiryHandler`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#InquiryHandler) interface and returns an [`http.Handler`](https://pkg.go.dev/net/http#Handler) that wraps the [`InquiryHandler`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#InquiryHandler) to handle [TRP Transfer Inquiry `POST` requests](https://gitlab.com/OpenVASP/travel-rule-protocol/-/blob/master/core/specification.md?ref_type=heads#detailed-protocol-flow). The [`InquiryHandler`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#InquiryHandler) is defined as follows: + +```golang +type InquiryHandler interface { + OnInquiry(*Inquiry) (*InquiryResolution, error) +} +``` + +The HTTP handler returned performs the following operations when an incoming HTTP `POST` request is received: + +1. Validates the incoming TRP request +2. Parses the TRP [`Inquiry`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#Inquiry) object along with any extensions. +3. Calls the handler's `OnInquiry` method +4. Returns success or failure based on the returned value of `OnInquiry`. + +To return a failure condition from the `OnInquiry()` function, users may return an [`openvasp.StatusError`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#StatusError) that specifies the HTTP status code and message to return. This is useful particularly to return `404` errors if the Travel Address is incorrect or no beneficiary account exists at the endpoint. If a generic `error` is returned, then the handler will return a [500 Internal Server Error](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500) along with the `err.Error()` text. + +```golang +func (t *TRPHandler) OnInquiry(in *openvasp.Inquiry) (*openvasp.InquiryResolution, error) { + + // Lookup Travel Address and return a 404 error if beneficiary is not found. + if notFound { + return nil, &openvasp.StatusError{Code: http.StatusNotFound} + } + +} +``` + +To return a succesful [200 OK](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200) response, return an [`openvasp.InquiryResolution`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#InquiryResolution) object or simply `nil, nil`. + +The semantics are as follows: + +- If the resolution response is `nil` or contains just the `Version`, then the counterparty expects a subsequent `POST` request to the callback in the request. +- The inquiry can be automatically approved by returning the `Approved` field without the `Version` or the `Rejected` fields (these must be zero valued). +- The inquiry can be automatically rejected by specifying a `Rejected` reason without the `Version` or the `Approved` fields (these must be zero valued). + + +## Transfer Confirmation + +The [`openvasp.TransferConfirmation`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#TransferConfirmation) function accepts an object that implements the [`openvasp.ConfirmationHander`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#ConfirmationHandler) interface and returns an `http.Handler` that wraps the [`ConfirmationHander`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#ConfirmationHandler) to handle [TRP Transfer Confirmation `POST` requests](https://gitlab.com/OpenVASP/travel-rule-protocol/-/blob/master/core/specification.md?ref_type=heads#transfer-confirmation). The [`ConfirmationHander`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#ConfirmationHandler) is defined as follows: + +```golang +type ConfirmationHandler interface { + OnConfirmation(*Confirmation) error +} +``` + +When an incoming HTTP `POST` request is received (e.g. to the callback URL specified in the transfer inquiry), the HTTP handler performs the following operations: + +1. Validates the incoming TRP request +2. Parses the TRP [`Confirmation`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#Confirmation) object +3. Calls the handler's `OnConfirmation` method +4. Returns a [200 OK](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200) response if the error is `nil` otherwise returns the `StatusError` or a [500 Internal Server Error](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500) + +## Setting up a Server + +There are many ways to setup an `http.Server` in Golang. Feel free to use a the plain vanilla server or a framework like [Gin](https://github.com/gin-gonic/gin) or an advanced muxer like [HTTPRouter](https://github.com/julienschmidt/httprouter). The handlers defined in the `openvasp` package implement the `http.HandlerFunc` and return an `http.Handler` object and can be used in most Go frameworks. + +The primary consideration is mapping URLs (e.g. [multiplexing](https://www.alexedwards.net/blog/an-introduction-to-handlers-and-servemuxes-in-go)) and setting up TLS termination and mTLS authentication. TRISA recommends that you terminate TLS and mTLS at a reverse-proxy for effective load balancing. However, by way of example, here is a simple code snippet to demonstrate setting up mTLS in a Go server. + +```golang +func main() { + // Assuming you have your mTLS certificate and keys stored in cert.pem and key.pem + certs, err := os.ReadFile("cert.pem") + if err != nil { + log.Fatal(err) + } + + certPool := x509.NewCertPool() + certPool.AppendCertsFromPem(certs) + + server := http.Server{ + Addr: ":8080", + Handler: mux, + TLSConfig: &tls.Config{ + ClientAuth: tls.RequireAndVerifyClientCert, + CliantCAs: certPool, + MinVersion: tls.VersionTLS13, + }, + }, + + if er := server.ListenAndServeTLS("cert.pem", "key.pem"); err != nil { + log.Fatal(err) + } +} +``` + +For more robust mTLS setup, please see the [trust](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/trust) package in TRISA. + +## API Checks + +The [`openvasp.APIChecks`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#Inquiry) middleware validates TRP requests and parses header information from the request. Both the `TransferInquiry` and the `TransferConfirmation` handlers implement this middleware. + +The checks that are performed include: + +1. Ensure the HTTP Method is `POST` otherwise a [405 Method Not Allowed](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/405) error is returned. +2. Ensure the TRP API Version header is set and the version is compatible with the implemented TRP version otherwise a [400 Bad Request](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400) error is returned. +3. Ensures that the currently implemented TRP API Version header is set on the outgoing response. +4. Checks that there is a request identifier header on the request, otherwise a [400 Bad Request](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400) error is returned. +5. Ensures that the request identifier is echoed back on the outgoing response. +6. Enforces that the `Content-Type` header is specified and that the content type is `application/json`, otherwise a [415 Unsupported Media Type](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/415) error is returned. + +## ParseTRPInfo + +The [`openvasp.ParseTRPInfo`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#ParseTRPInfo) function parses TRP-specific headers from the request and adds them to a [`openvasp.TRPInfo`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#TRPInfo) struct that can be used for TRP processing. A mapping of the headers to the parsed fields is as follows: + +| Field | Header | Type | Description | +|-------------------|--------------------|----------|----------------------------------------------------------------------------------| +| Address | | string | The Travel Address, LNURL, or URL of the request | +| APIVersion | api-version | string | Defaults to the APIVersion of the package | +| RequestIdentifier | api-extensions | string | A unique identifier representing the specific transfer (used as the envelope ID) | +| APIExtensions | request-identifier | []string | The comma separated names of any extensions used in the request | \ No newline at end of file diff --git a/docs/content/openvasp/client.en.md b/docs/content/openvasp/client.en.md new file mode 100644 index 00000000..6bfa405e --- /dev/null +++ b/docs/content/openvasp/client.en.md @@ -0,0 +1,123 @@ +--- +title: "TRP Client" +date: 2023-09-13T16:49:59-05:00 +lastmod: 2023-09-13T16:49:59-05:00 +description: "Making requests to other TRP nodes" +weight: 20 +--- + +TRISA provides an [`openvasp.Client`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#Client) to make communicating with counterparty VASPs simpler and ensure that the TRP protocol is being completed successfully. To create a client: + +```golang +client := openvasp.NewClient() +``` + +{{% notice note %}} +Client options such as mTLS configuration are coming soon! +{{% /notice %}} + +## Inquiries + +To send a Travel Rule inquiry, use the [`client.Inquiry()`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#Client.Inquiry) method. + +The client parses the routing for the `Inquiry` using the `Inquiry.TRP` field; at the very least, the `Address` and `RequestIdentifier` fields must be specified: + +```golang +type TRPInfo struct { + Address string // Address can be a Travel Rule Address, LNURL, or URL + APIVersion string // Defaults to the APIVersion of the package + RequestIdentifier string // A unique identifier representing the specific transfer + APIExtensions []string // The names of any extensions uses in the request +} +``` + +The `APIVersion` field is automatically populated with the defeault version, and any extensions are populated from the `Inquiry` itself, so these can be ignored. + +The `Address` field can be one of: + +- [LNURL](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp/lnurl) +- [Travel Address](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp/traddr) +- Plain HTTPS URL + +Note that the TRISA library has packages for creating and parsing LNURLs and Travel Addresses so that you do not have to import additional dependencies for your code. + +The client returns a [`TravelRuleResponse`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#TravelRuleResponse), which you can use as though it were a regular `http.Response` object, including use cases like checking the `http.StatusCode`. However, you can also parse the `InquiryResolution` response as follows: + +```golang +func main() { + client := openvasp.NewClient() + + inquiry := &openvasp.Inquiry{ + TRP: &openvasp.TRP{ + Address: "ta2W2HPKfHxgSgrzY178knqXHg1H3jfeQrwQ9JrKBs9wv", + RequestIdentifier: "129f6013-9125-4beb-9e86-bb20c440e164" + }, + Asset: &openvasp.Asset{}, + Amount: 0.001, + Callback: "https://originator.com/confirm?t=i", + IVMS101: &ivms101.IdentityPayload{}, + } + + rep, err := client.Inquiry(inquiry) + if err != nil { + log.Fatal(err) + } + + if rep.StatusCode == http.StatusOK { + resolution, err := rep.InquiryResolution() + if err != nil { + log.Fatal(err) + } + + fmt.Println(resolution) + + } else { + log.Fatal(rep.Status) + } + +} +``` + +## Confirmation + +To send a Transfer Confirmation, use the [`client.Confirmation()`](https://pkg.go.dev/github.com/trisacrypto/trisa/pkg/openvasp#Client.Confirmation) method. + +The client parses the routing for the `Confirmation` using the `Confirmation.TRP` field; at the very least, the `Address` and `RequestIdentifier` fields must be specified: + +```golang +type TRPInfo struct { + Address string // Address can be a Travel Rule Address, LNURL, or URL + APIVersion string // Defaults to the APIVersion of the package + RequestIdentifier string // A unique identifier representing the specific transfer + APIExtensions []string // The names of any extensions uses in the request +} +``` + +The `APIVersion` field is automatically populated with the defeault version, and any extensions are populated from the `Confirmation` itself, so these can be ignored. + +The client returns a `TravelRuleResponse` however, a simple [204 No Content](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/204) response is expected for a confirmation, so there is no JSON body to parse. + +```golang +func main() { + client := openvasp.NewClient() + + confirm := &openvasp.Confirmation{ + TRP: &openvasp.TRP{ + Address: "https://beneficiary.com/confirm?t=i", + RequestIdentifier: "129f6013-9125-4beb-9e86-bb20c440e164", + }, + Canceled: "the transaction could not be completed", + } + + rep, err := client.Confirmation(inquiry) + if err != nil { + log.Fatal(err) + } + + if rep.StatusCode == http.StatusNoContent { + fmt.Println("success!") + } else { + log.Fatal(rep.Status) + } +} +``` \ No newline at end of file diff --git a/docs/content/openvasp/trp_flow.mmd b/docs/content/openvasp/trp_flow.mmd new file mode 100644 index 00000000..7cc0eaab --- /dev/null +++ b/docs/content/openvasp/trp_flow.mmd @@ -0,0 +1,23 @@ +sequenceDiagram + actor Alice + participant Originator as Originator VASP + participant Beneficary as Beneficary VASP + actor Bob + + Bob->>Beneficary: I would like to receive funds + Beneficary->>Bob: Generated Travel Address for Bob + + Bob-->>Alice: Send Funds to this Travel Address + + Alice->>Originator: Send Funds to Travel Address + + Originator->>Originator: Originator KYC Checks + + Originator->>Beneficary: Transfer Inquiry with IVMS101 and Callback + + Beneficary->>Beneficary: Beneficiary KYC Checks + + Beneficary->>Originator: Inquiry Resolution + + Originator-->> Beneficary: Execute Virtual Asset Transfer + Originator->> Beneficary: Transfer Confirmation \ No newline at end of file diff --git a/docs/layouts/partials/custom-header.html b/docs/layouts/partials/custom-header.html new file mode 100644 index 00000000..0b984073 --- /dev/null +++ b/docs/layouts/partials/custom-header.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/static/css/syntax.css b/docs/static/css/syntax.css new file mode 100644 index 00000000..fef57d0f --- /dev/null +++ b/docs/static/css/syntax.css @@ -0,0 +1,86 @@ +/* Background */ .bg { color: #d8dee9; background-color: #2e3440; } +/* PreWrapper */ .chroma { color: #d8dee9; background-color: #2e3440; } +/* Other */ .chroma .x { } +/* Error */ .chroma .err { color: #bf616a } +/* CodeLine */ .chroma .cl { } +/* LineLink */ .chroma .lnlinks { outline: none; text-decoration: none; color: inherit } +/* LineTableTD */ .chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } +/* LineTable */ .chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; } +/* LineHighlight */ .chroma .hl { background-color: #ffffcc } +/* LineNumbersTable */ .chroma .lnt { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #6c6f74 } +/* LineNumbers */ .chroma .ln { white-space: pre; -webkit-user-select: none; user-select: none; margin-right: 0.4em; padding: 0 0.4em 0 0.4em;color: #6c6f74 } +/* Line */ .chroma .line { display: flex; } +/* Keyword */ .chroma .k { color: #81a1c1; font-weight: bold } +/* KeywordConstant */ .chroma .kc { color: #81a1c1; font-weight: bold } +/* KeywordDeclaration */ .chroma .kd { color: #81a1c1; font-weight: bold } +/* KeywordNamespace */ .chroma .kn { color: #81a1c1; font-weight: bold } +/* KeywordPseudo */ .chroma .kp { color: #81a1c1 } +/* KeywordReserved */ .chroma .kr { color: #81a1c1; font-weight: bold } +/* KeywordType */ .chroma .kt { color: #81a1c1 } +/* Name */ .chroma .n { } +/* NameAttribute */ .chroma .na { color: #8fbcbb } +/* NameBuiltin */ .chroma .nb { color: #81a1c1 } +/* NameBuiltinPseudo */ .chroma .bp { } +/* NameClass */ .chroma .nc { color: #8fbcbb } +/* NameConstant */ .chroma .no { color: #8fbcbb } +/* NameDecorator */ .chroma .nd { color: #d08770 } +/* NameEntity */ .chroma .ni { color: #d08770 } +/* NameException */ .chroma .ne { color: #bf616a } +/* NameFunction */ .chroma .nf { color: #88c0d0 } +/* NameFunctionMagic */ .chroma .fm { } +/* NameLabel */ .chroma .nl { color: #8fbcbb } +/* NameNamespace */ .chroma .nn { color: #8fbcbb } +/* NameOther */ .chroma .nx { } +/* NameProperty */ .chroma .py { color: #8fbcbb } +/* NameTag */ .chroma .nt { color: #81a1c1 } +/* NameVariable */ .chroma .nv { } +/* NameVariableClass */ .chroma .vc { } +/* NameVariableGlobal */ .chroma .vg { } +/* NameVariableInstance */ .chroma .vi { } +/* NameVariableMagic */ .chroma .vm { } +/* Literal */ .chroma .l { } +/* LiteralDate */ .chroma .ld { } +/* LiteralString */ .chroma .s { color: #a3be8c } +/* LiteralStringAffix */ .chroma .sa { color: #a3be8c } +/* LiteralStringBacktick */ .chroma .sb { color: #a3be8c } +/* LiteralStringChar */ .chroma .sc { color: #a3be8c } +/* LiteralStringDelimiter */ .chroma .dl { color: #a3be8c } +/* LiteralStringDoc */ .chroma .sd { color: #616e87 } +/* LiteralStringDouble */ .chroma .s2 { color: #a3be8c } +/* LiteralStringEscape */ .chroma .se { color: #ebcb8b } +/* LiteralStringHeredoc */ .chroma .sh { color: #a3be8c } +/* LiteralStringInterpol */ .chroma .si { color: #a3be8c } +/* LiteralStringOther */ .chroma .sx { color: #a3be8c } +/* LiteralStringRegex */ .chroma .sr { color: #ebcb8b } +/* LiteralStringSingle */ .chroma .s1 { color: #a3be8c } +/* LiteralStringSymbol */ .chroma .ss { color: #a3be8c } +/* LiteralNumber */ .chroma .m { color: #b48ead } +/* LiteralNumberBin */ .chroma .mb { color: #b48ead } +/* LiteralNumberFloat */ .chroma .mf { color: #b48ead } +/* LiteralNumberHex */ .chroma .mh { color: #b48ead } +/* LiteralNumberInteger */ .chroma .mi { color: #b48ead } +/* LiteralNumberIntegerLong */ .chroma .il { color: #b48ead } +/* LiteralNumberOct */ .chroma .mo { color: #b48ead } +/* Operator */ .chroma .o { color: #81a1c1 } +/* OperatorWord */ .chroma .ow { color: #81a1c1; font-weight: bold } +/* Punctuation */ .chroma .p { color: #eceff4 } +/* Comment */ .chroma .c { color: #616e87; font-style: italic } +/* CommentHashbang */ .chroma .ch { color: #616e87; font-style: italic } +/* CommentMultiline */ .chroma .cm { color: #616e87; font-style: italic } +/* CommentSingle */ .chroma .c1 { color: #616e87; font-style: italic } +/* CommentSpecial */ .chroma .cs { color: #616e87; font-style: italic } +/* CommentPreproc */ .chroma .cp { color: #5e81ac; font-style: italic } +/* CommentPreprocFile */ .chroma .cpf { color: #5e81ac; font-style: italic } +/* Generic */ .chroma .g { } +/* GenericDeleted */ .chroma .gd { color: #bf616a } +/* GenericEmph */ .chroma .ge { font-style: italic } +/* GenericError */ .chroma .gr { color: #bf616a } +/* GenericHeading */ .chroma .gh { color: #88c0d0; font-weight: bold } +/* GenericInserted */ .chroma .gi { color: #a3be8c } +/* GenericOutput */ .chroma .go { } +/* GenericPrompt */ .chroma .gp { color: #4c566a; font-weight: bold } +/* GenericStrong */ .chroma .gs { font-weight: bold } +/* GenericSubheading */ .chroma .gu { color: #88c0d0; font-weight: bold } +/* GenericTraceback */ .chroma .gt { color: #bf616a } +/* GenericUnderline */ .chroma .gl { } +/* TextWhitespace */ .chroma .w { } diff --git a/docs/static/img/trp_flow.png b/docs/static/img/trp_flow.png new file mode 100644 index 0000000000000000000000000000000000000000..7c4b79adea6d0684d50321267417168f122ca4b0 GIT binary patch literal 127278 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%0DH;`!h;WFX`fa9>OA#xfDV#Pjya#!?zX%-4*n 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