2288 lines
72 KiB
Go
2288 lines
72 KiB
Go
// render.proto — block/template render payloads and the explicit
|
||
// render-context envelope (WO-WZ-001).
|
||
//
|
||
// RenderContext serializes every value blocks currently read from ctx via
|
||
// core/blocks/context.go. Function-valued context entries (SlotRenderer,
|
||
// MediaResolver, EmbedResolver, the generic Queries value) cannot cross the
|
||
// wire; see core/docs/wasm-abi.md for how each one maps.
|
||
|
||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||
// versions:
|
||
// protoc-gen-go v1.36.11
|
||
// protoc (unknown)
|
||
// source: v1/render.proto
|
||
|
||
package abiv1
|
||
|
||
import (
|
||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
|
||
reflect "reflect"
|
||
sync "sync"
|
||
unsafe "unsafe"
|
||
)
|
||
|
||
const (
|
||
// Verify that this generated code is sufficiently up-to-date.
|
||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||
)
|
||
|
||
// RenderBlockRequest renders one block (blocks.BlockFunc).
|
||
type RenderBlockRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
BlockKey string `protobuf:"bytes,1,opt,name=block_key,json=blockKey,proto3" json:"block_key,omitempty"`
|
||
// JSON encoding of the block's content map.
|
||
ContentJson []byte `protobuf:"bytes,2,opt,name=content_json,json=contentJson,proto3" json:"content_json,omitempty"`
|
||
RenderContext *RenderContext `protobuf:"bytes,3,opt,name=render_context,json=renderContext,proto3" json:"render_context,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RenderBlockRequest) Reset() {
|
||
*x = RenderBlockRequest{}
|
||
mi := &file_v1_render_proto_msgTypes[0]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RenderBlockRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenderBlockRequest) ProtoMessage() {}
|
||
|
||
func (x *RenderBlockRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[0]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RenderBlockRequest.ProtoReflect.Descriptor instead.
|
||
func (*RenderBlockRequest) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{0}
|
||
}
|
||
|
||
func (x *RenderBlockRequest) GetBlockKey() string {
|
||
if x != nil {
|
||
return x.BlockKey
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderBlockRequest) GetContentJson() []byte {
|
||
if x != nil {
|
||
return x.ContentJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderBlockRequest) GetRenderContext() *RenderContext {
|
||
if x != nil {
|
||
return x.RenderContext
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type RenderBlockResponse struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
// Final rendered HTML for a plain (non-template) block. Ignored when
|
||
// `powered` is set.
|
||
Html string `protobuf:"bytes,1,opt,name=html,proto3" json:"html,omitempty"`
|
||
// Set when the block is "powered": instead of final HTML, the block hands
|
||
// back a template string + data map (blocks.PoweredBlock) and the HOST
|
||
// renders it (pongo2/ninjatpl, host-side) AFTER this RENDER_BLOCK call has
|
||
// returned. Because the block-invoke has already returned, the guest
|
||
// instance is free, so any plugin tag/filter the template hits (RENDER_TAG /
|
||
// APPLY_FILTER) is a fresh invoke — no re-entrancy. A singular message field
|
||
// has explicit presence: nil (GetPowered() == nil) means a plain HTML block.
|
||
Powered *PoweredBlock `protobuf:"bytes,2,opt,name=powered,proto3" json:"powered,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RenderBlockResponse) Reset() {
|
||
*x = RenderBlockResponse{}
|
||
mi := &file_v1_render_proto_msgTypes[1]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RenderBlockResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenderBlockResponse) ProtoMessage() {}
|
||
|
||
func (x *RenderBlockResponse) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[1]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RenderBlockResponse.ProtoReflect.Descriptor instead.
|
||
func (*RenderBlockResponse) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{1}
|
||
}
|
||
|
||
func (x *RenderBlockResponse) GetHtml() string {
|
||
if x != nil {
|
||
return x.Html
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderBlockResponse) GetPowered() *PoweredBlock {
|
||
if x != nil {
|
||
return x.Powered
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// PoweredBlock is a template-backed block result. The host renders `template`
|
||
// with `data_json` as the pongo2 data map. See core/docs/wasm-abi.md
|
||
// §"Powered blocks (render as a host capability)".
|
||
type PoweredBlock struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
// ninjatpl/pongo2 template source the host renders host-side.
|
||
Template string `protobuf:"bytes,1,opt,name=template,proto3" json:"template,omitempty"`
|
||
// JSON encoding of the template data map (map[string]any).
|
||
DataJson []byte `protobuf:"bytes,2,opt,name=data_json,json=dataJson,proto3" json:"data_json,omitempty"`
|
||
// Requested HTTP response status. Before writing headers, the host accepts
|
||
// only 200–599, uses the highest status class, and keeps the first result
|
||
// encountered within that class.
|
||
StatusCode int32 `protobuf:"varint,3,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
|
||
// Structured document metadata merged by the host into the page head. The
|
||
// first non-empty value for each field wins in deterministic render order.
|
||
Metadata *DocumentMetadata `protobuf:"bytes,4,opt,name=metadata,proto3" json:"metadata,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *PoweredBlock) Reset() {
|
||
*x = PoweredBlock{}
|
||
mi := &file_v1_render_proto_msgTypes[2]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *PoweredBlock) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PoweredBlock) ProtoMessage() {}
|
||
|
||
func (x *PoweredBlock) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[2]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use PoweredBlock.ProtoReflect.Descriptor instead.
|
||
func (*PoweredBlock) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{2}
|
||
}
|
||
|
||
func (x *PoweredBlock) GetTemplate() string {
|
||
if x != nil {
|
||
return x.Template
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PoweredBlock) GetDataJson() []byte {
|
||
if x != nil {
|
||
return x.DataJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PoweredBlock) GetStatusCode() int32 {
|
||
if x != nil {
|
||
return x.StatusCode
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PoweredBlock) GetMetadata() *DocumentMetadata {
|
||
if x != nil {
|
||
return x.Metadata
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// DocumentMetadata is the safe, shared subset of document head data a plugin
|
||
// may provide. The host validates and escapes every value before rendering.
|
||
type DocumentMetadata struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
|
||
Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
|
||
CanonicalUrl string `protobuf:"bytes,3,opt,name=canonical_url,json=canonicalUrl,proto3" json:"canonical_url,omitempty"`
|
||
ImageUrl string `protobuf:"bytes,4,opt,name=image_url,json=imageUrl,proto3" json:"image_url,omitempty"`
|
||
Robots string `protobuf:"bytes,5,opt,name=robots,proto3" json:"robots,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *DocumentMetadata) Reset() {
|
||
*x = DocumentMetadata{}
|
||
mi := &file_v1_render_proto_msgTypes[3]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *DocumentMetadata) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*DocumentMetadata) ProtoMessage() {}
|
||
|
||
func (x *DocumentMetadata) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[3]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use DocumentMetadata.ProtoReflect.Descriptor instead.
|
||
func (*DocumentMetadata) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{3}
|
||
}
|
||
|
||
func (x *DocumentMetadata) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *DocumentMetadata) GetDescription() string {
|
||
if x != nil {
|
||
return x.Description
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *DocumentMetadata) GetCanonicalUrl() string {
|
||
if x != nil {
|
||
return x.CanonicalUrl
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *DocumentMetadata) GetImageUrl() string {
|
||
if x != nil {
|
||
return x.ImageUrl
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *DocumentMetadata) GetRobots() string {
|
||
if x != nil {
|
||
return x.Robots
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// RenderTemplateRequest renders one template (templates.TemplateFunc).
|
||
type RenderTemplateRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
TemplateKey string `protobuf:"bytes,1,opt,name=template_key,json=templateKey,proto3" json:"template_key,omitempty"`
|
||
// JSON encoding of the template's doc map (the page document).
|
||
DocJson []byte `protobuf:"bytes,2,opt,name=doc_json,json=docJson,proto3" json:"doc_json,omitempty"`
|
||
RenderContext *RenderContext `protobuf:"bytes,3,opt,name=render_context,json=renderContext,proto3" json:"render_context,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RenderTemplateRequest) Reset() {
|
||
*x = RenderTemplateRequest{}
|
||
mi := &file_v1_render_proto_msgTypes[4]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RenderTemplateRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenderTemplateRequest) ProtoMessage() {}
|
||
|
||
func (x *RenderTemplateRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[4]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RenderTemplateRequest.ProtoReflect.Descriptor instead.
|
||
func (*RenderTemplateRequest) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{4}
|
||
}
|
||
|
||
func (x *RenderTemplateRequest) GetTemplateKey() string {
|
||
if x != nil {
|
||
return x.TemplateKey
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderTemplateRequest) GetDocJson() []byte {
|
||
if x != nil {
|
||
return x.DocJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderTemplateRequest) GetRenderContext() *RenderContext {
|
||
if x != nil {
|
||
return x.RenderContext
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type RenderTemplateResponse struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Document *TemplateDocument `protobuf:"bytes,2,opt,name=document,proto3" json:"document,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RenderTemplateResponse) Reset() {
|
||
*x = RenderTemplateResponse{}
|
||
mi := &file_v1_render_proto_msgTypes[5]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RenderTemplateResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenderTemplateResponse) ProtoMessage() {}
|
||
|
||
func (x *RenderTemplateResponse) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[5]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RenderTemplateResponse.ProtoReflect.Descriptor instead.
|
||
func (*RenderTemplateResponse) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{5}
|
||
}
|
||
|
||
func (x *RenderTemplateResponse) GetDocument() *TemplateDocument {
|
||
if x != nil {
|
||
return x.Document
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// TemplateDocument is a guest template's contribution to a page. The HOST
|
||
// owns the document envelope: it composes doctype/<html>/<head>/<body> with
|
||
// the cms-authored bn chrome, built from the same doc map it sent the guest
|
||
// as doc_json (see cms docs/superpowers/specs/2026-07-07-host-chrome-injection-design.md).
|
||
type TemplateDocument struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
BodyHtml []byte `protobuf:"bytes,1,opt,name=body_html,json=bodyHtml,proto3" json:"body_html,omitempty"` // inner <body> content
|
||
BodyClass string `protobuf:"bytes,2,opt,name=body_class,json=bodyClass,proto3" json:"body_class,omitempty"` // <body class="...">
|
||
Lang string `protobuf:"bytes,3,opt,name=lang,proto3" json:"lang,omitempty"` // <html lang>; empty means host default "en"
|
||
HeadExtraHtml []byte `protobuf:"bytes,4,opt,name=head_extra_html,json=headExtraHtml,proto3" json:"head_extra_html,omitempty"` // appended inside <head>, after bn.Head
|
||
BodyEndExtraHtml []byte `protobuf:"bytes,5,opt,name=body_end_extra_html,json=bodyEndExtraHtml,proto3" json:"body_end_extra_html,omitempty"` // appended before </body>, after bn.BodyEnd
|
||
// Extra <html>-element attributes (e.g. data-theme). A "lang" key here is
|
||
// ignored — the lang field wins.
|
||
HtmlAttrs map[string]string `protobuf:"bytes,6,rep,name=html_attrs,json=htmlAttrs,proto3" json:"html_attrs,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||
// Requested HTTP response status. The host applies the same validation and
|
||
// precedence rules as PoweredBlock.status_code.
|
||
StatusCode int32 `protobuf:"varint,7,opt,name=status_code,json=statusCode,proto3" json:"status_code,omitempty"`
|
||
// Structured document metadata merged by the host into the page head.
|
||
Metadata *DocumentMetadata `protobuf:"bytes,8,opt,name=metadata,proto3" json:"metadata,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *TemplateDocument) Reset() {
|
||
*x = TemplateDocument{}
|
||
mi := &file_v1_render_proto_msgTypes[6]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *TemplateDocument) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*TemplateDocument) ProtoMessage() {}
|
||
|
||
func (x *TemplateDocument) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[6]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use TemplateDocument.ProtoReflect.Descriptor instead.
|
||
func (*TemplateDocument) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{6}
|
||
}
|
||
|
||
func (x *TemplateDocument) GetBodyHtml() []byte {
|
||
if x != nil {
|
||
return x.BodyHtml
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *TemplateDocument) GetBodyClass() string {
|
||
if x != nil {
|
||
return x.BodyClass
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *TemplateDocument) GetLang() string {
|
||
if x != nil {
|
||
return x.Lang
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *TemplateDocument) GetHeadExtraHtml() []byte {
|
||
if x != nil {
|
||
return x.HeadExtraHtml
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *TemplateDocument) GetBodyEndExtraHtml() []byte {
|
||
if x != nil {
|
||
return x.BodyEndExtraHtml
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *TemplateDocument) GetHtmlAttrs() map[string]string {
|
||
if x != nil {
|
||
return x.HtmlAttrs
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *TemplateDocument) GetStatusCode() int32 {
|
||
if x != nil {
|
||
return x.StatusCode
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *TemplateDocument) GetMetadata() *DocumentMetadata {
|
||
if x != nil {
|
||
return x.Metadata
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// RenderTagRequest invokes a plugin-declared template tag (HOOK_RENDER_TAG).
|
||
// The host wires one pongo2 tag per manifest.declared_tags name; when its
|
||
// engine hits that tag while rendering a powered block, it calls back here.
|
||
// Re-entrancy-free: the originating RENDER_BLOCK has already returned.
|
||
type RenderTagRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
TagName string `protobuf:"bytes,1,opt,name=tag_name,json=tagName,proto3" json:"tag_name,omitempty"`
|
||
// JSON encoding of the tag's parsed arguments (map[string]any).
|
||
ArgsJson []byte `protobuf:"bytes,2,opt,name=args_json,json=argsJson,proto3" json:"args_json,omitempty"`
|
||
// The active render context (same envelope RENDER_BLOCK carries), so the
|
||
// tag fn can read page/post/request state via blocks.Get*.
|
||
RenderContext *RenderContext `protobuf:"bytes,3,opt,name=render_context,json=renderContext,proto3" json:"render_context,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RenderTagRequest) Reset() {
|
||
*x = RenderTagRequest{}
|
||
mi := &file_v1_render_proto_msgTypes[7]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RenderTagRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenderTagRequest) ProtoMessage() {}
|
||
|
||
func (x *RenderTagRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[7]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RenderTagRequest.ProtoReflect.Descriptor instead.
|
||
func (*RenderTagRequest) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{7}
|
||
}
|
||
|
||
func (x *RenderTagRequest) GetTagName() string {
|
||
if x != nil {
|
||
return x.TagName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderTagRequest) GetArgsJson() []byte {
|
||
if x != nil {
|
||
return x.ArgsJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderTagRequest) GetRenderContext() *RenderContext {
|
||
if x != nil {
|
||
return x.RenderContext
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// RenderTagResponse returns the tag's rendered HTML. A non-empty `error`
|
||
// carries the tag fn's returned error (distinct from an AbiError, which is
|
||
// reserved for transport/dispatch/panic failures).
|
||
type RenderTagResponse struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Html string `protobuf:"bytes,1,opt,name=html,proto3" json:"html,omitempty"`
|
||
Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RenderTagResponse) Reset() {
|
||
*x = RenderTagResponse{}
|
||
mi := &file_v1_render_proto_msgTypes[8]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RenderTagResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenderTagResponse) ProtoMessage() {}
|
||
|
||
func (x *RenderTagResponse) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[8]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RenderTagResponse.ProtoReflect.Descriptor instead.
|
||
func (*RenderTagResponse) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{8}
|
||
}
|
||
|
||
func (x *RenderTagResponse) GetHtml() string {
|
||
if x != nil {
|
||
return x.Html
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderTagResponse) GetError() string {
|
||
if x != nil {
|
||
return x.Error
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// ApplyFilterRequest invokes a plugin-declared template filter
|
||
// (HOOK_APPLY_FILTER). The host wires one pongo2 filter per
|
||
// manifest.declared_filters name.
|
||
type ApplyFilterRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
FilterName string `protobuf:"bytes,1,opt,name=filter_name,json=filterName,proto3" json:"filter_name,omitempty"`
|
||
// The value the filter is applied to (pongo2 passes strings).
|
||
Input string `protobuf:"bytes,2,opt,name=input,proto3" json:"input,omitempty"`
|
||
// JSON encoding of the filter's arguments (map[string]any).
|
||
ArgsJson []byte `protobuf:"bytes,3,opt,name=args_json,json=argsJson,proto3" json:"args_json,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ApplyFilterRequest) Reset() {
|
||
*x = ApplyFilterRequest{}
|
||
mi := &file_v1_render_proto_msgTypes[9]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ApplyFilterRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ApplyFilterRequest) ProtoMessage() {}
|
||
|
||
func (x *ApplyFilterRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[9]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ApplyFilterRequest.ProtoReflect.Descriptor instead.
|
||
func (*ApplyFilterRequest) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{9}
|
||
}
|
||
|
||
func (x *ApplyFilterRequest) GetFilterName() string {
|
||
if x != nil {
|
||
return x.FilterName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ApplyFilterRequest) GetInput() string {
|
||
if x != nil {
|
||
return x.Input
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ApplyFilterRequest) GetArgsJson() []byte {
|
||
if x != nil {
|
||
return x.ArgsJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// ApplyFilterResponse returns the filtered output. A non-empty `error`
|
||
// carries the filter fn's returned error.
|
||
type ApplyFilterResponse struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Output string `protobuf:"bytes,1,opt,name=output,proto3" json:"output,omitempty"`
|
||
Error string `protobuf:"bytes,2,opt,name=error,proto3" json:"error,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ApplyFilterResponse) Reset() {
|
||
*x = ApplyFilterResponse{}
|
||
mi := &file_v1_render_proto_msgTypes[10]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ApplyFilterResponse) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ApplyFilterResponse) ProtoMessage() {}
|
||
|
||
func (x *ApplyFilterResponse) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[10]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ApplyFilterResponse.ProtoReflect.Descriptor instead.
|
||
func (*ApplyFilterResponse) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{10}
|
||
}
|
||
|
||
func (x *ApplyFilterResponse) GetOutput() string {
|
||
if x != nil {
|
||
return x.Output
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ApplyFilterResponse) GetError() string {
|
||
if x != nil {
|
||
return x.Error
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// RenderContext is the explicit envelope of the context values enumerated
|
||
// from core/blocks/context.go. Absent sub-messages mean the corresponding
|
||
// ctx value was not set (the getters return nil / zero values).
|
||
type RenderContext struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
// blocks.GetRequest — subset of *http.Request that render code reads.
|
||
Request *RequestInfo `protobuf:"bytes,1,opt,name=request,proto3" json:"request,omitempty"`
|
||
// blocks.GetBlockContext — the pongo2 template data struct.
|
||
BlockContext *BlockContext `protobuf:"bytes,2,opt,name=block_context,json=blockContext,proto3" json:"block_context,omitempty"`
|
||
// blocks.GetTemplateKey.
|
||
TemplateKey string `protobuf:"bytes,3,opt,name=template_key,json=templateKey,proto3" json:"template_key,omitempty"`
|
||
// blocks.GetCurrentPage.
|
||
Page *PageContext `protobuf:"bytes,4,opt,name=page,proto3" json:"page,omitempty"`
|
||
// blocks.GetCurrentBlogPost.
|
||
Post *PostContext `protobuf:"bytes,5,opt,name=post,proto3" json:"post,omitempty"`
|
||
// blocks.GetCurrentAuthor.
|
||
Author *AuthorContext `protobuf:"bytes,6,opt,name=author,proto3" json:"author,omitempty"`
|
||
// blocks.GetCurrentCategory.
|
||
Category *CategoryContext `protobuf:"bytes,7,opt,name=category,proto3" json:"category,omitempty"`
|
||
// blocks.GetMasterPage; presence doubles as IsMasterPageContext.
|
||
MasterPage *MasterPageContext `protobuf:"bytes,8,opt,name=master_page,json=masterPage,proto3" json:"master_page,omitempty"`
|
||
// blocks.GetRequestedPath (404 pages).
|
||
RequestedPath string `protobuf:"bytes,9,opt,name=requested_path,json=requestedPath,proto3" json:"requested_path,omitempty"`
|
||
// blocks.GetInjectedSlots (master page rendering).
|
||
InjectedSlots map[string]string `protobuf:"bytes,10,rep,name=injected_slots,json=injectedSlots,proto3" json:"injected_slots,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||
// blocks.IsEditor.
|
||
IsEditor bool `protobuf:"varint,11,opt,name=is_editor,json=isEditor,proto3" json:"is_editor,omitempty"`
|
||
// blocks.GetExpectedSlots.
|
||
ExpectedSlots []string `protobuf:"bytes,12,rep,name=expected_slots,json=expectedSlots,proto3" json:"expected_slots,omitempty"`
|
||
// blocks.GetBlockID (UUID; empty for uuid.Nil).
|
||
BlockId string `protobuf:"bytes,13,opt,name=block_id,json=blockId,proto3" json:"block_id,omitempty"`
|
||
// blocks.GetCurrentPageID (UUID; empty for uuid.Nil).
|
||
CurrentPageId string `protobuf:"bytes,14,opt,name=current_page_id,json=currentPageId,proto3" json:"current_page_id,omitempty"`
|
||
// blocks.GetHumanProofBanner.
|
||
HumanProofBanner *HumanProofBanner `protobuf:"bytes,15,opt,name=human_proof_banner,json=humanProofBanner,proto3" json:"human_proof_banner,omitempty"`
|
||
// blocks.GetDetailRow.
|
||
DetailRow *DetailRow `protobuf:"bytes,16,opt,name=detail_row,json=detailRow,proto3" json:"detail_row,omitempty"`
|
||
// Active theme variables, JSON-encoded.
|
||
ThemeJson []byte `protobuf:"bytes,17,opt,name=theme_json,json=themeJson,proto3" json:"theme_json,omitempty"`
|
||
// Site locale (BCP 47).
|
||
Locale string `protobuf:"bytes,18,opt,name=locale,proto3" json:"locale,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RenderContext) Reset() {
|
||
*x = RenderContext{}
|
||
mi := &file_v1_render_proto_msgTypes[11]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RenderContext) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RenderContext) ProtoMessage() {}
|
||
|
||
func (x *RenderContext) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[11]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RenderContext.ProtoReflect.Descriptor instead.
|
||
func (*RenderContext) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{11}
|
||
}
|
||
|
||
func (x *RenderContext) GetRequest() *RequestInfo {
|
||
if x != nil {
|
||
return x.Request
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetBlockContext() *BlockContext {
|
||
if x != nil {
|
||
return x.BlockContext
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetTemplateKey() string {
|
||
if x != nil {
|
||
return x.TemplateKey
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderContext) GetPage() *PageContext {
|
||
if x != nil {
|
||
return x.Page
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetPost() *PostContext {
|
||
if x != nil {
|
||
return x.Post
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetAuthor() *AuthorContext {
|
||
if x != nil {
|
||
return x.Author
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetCategory() *CategoryContext {
|
||
if x != nil {
|
||
return x.Category
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetMasterPage() *MasterPageContext {
|
||
if x != nil {
|
||
return x.MasterPage
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetRequestedPath() string {
|
||
if x != nil {
|
||
return x.RequestedPath
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderContext) GetInjectedSlots() map[string]string {
|
||
if x != nil {
|
||
return x.InjectedSlots
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetIsEditor() bool {
|
||
if x != nil {
|
||
return x.IsEditor
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *RenderContext) GetExpectedSlots() []string {
|
||
if x != nil {
|
||
return x.ExpectedSlots
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetBlockId() string {
|
||
if x != nil {
|
||
return x.BlockId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderContext) GetCurrentPageId() string {
|
||
if x != nil {
|
||
return x.CurrentPageId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RenderContext) GetHumanProofBanner() *HumanProofBanner {
|
||
if x != nil {
|
||
return x.HumanProofBanner
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetDetailRow() *DetailRow {
|
||
if x != nil {
|
||
return x.DetailRow
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetThemeJson() []byte {
|
||
if x != nil {
|
||
return x.ThemeJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RenderContext) GetLocale() string {
|
||
if x != nil {
|
||
return x.Locale
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// RequestInfo carries the request subset render code reads from
|
||
// blocks.GetRequest (single-valued header map, matching BlockContext).
|
||
type RequestInfo struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Method string `protobuf:"bytes,1,opt,name=method,proto3" json:"method,omitempty"`
|
||
Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"`
|
||
Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
|
||
Host string `protobuf:"bytes,4,opt,name=host,proto3" json:"host,omitempty"`
|
||
RawQuery string `protobuf:"bytes,5,opt,name=raw_query,json=rawQuery,proto3" json:"raw_query,omitempty"`
|
||
Headers map[string]string `protobuf:"bytes,6,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||
Cookies map[string]string `protobuf:"bytes,7,rep,name=cookies,proto3" json:"cookies,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||
RemoteIp string `protobuf:"bytes,8,opt,name=remote_ip,json=remoteIp,proto3" json:"remote_ip,omitempty"`
|
||
Referrer string `protobuf:"bytes,9,opt,name=referrer,proto3" json:"referrer,omitempty"`
|
||
UserAgent string `protobuf:"bytes,10,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *RequestInfo) Reset() {
|
||
*x = RequestInfo{}
|
||
mi := &file_v1_render_proto_msgTypes[12]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *RequestInfo) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*RequestInfo) ProtoMessage() {}
|
||
|
||
func (x *RequestInfo) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[12]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use RequestInfo.ProtoReflect.Descriptor instead.
|
||
func (*RequestInfo) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{12}
|
||
}
|
||
|
||
func (x *RequestInfo) GetMethod() string {
|
||
if x != nil {
|
||
return x.Method
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RequestInfo) GetUrl() string {
|
||
if x != nil {
|
||
return x.Url
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RequestInfo) GetPath() string {
|
||
if x != nil {
|
||
return x.Path
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RequestInfo) GetHost() string {
|
||
if x != nil {
|
||
return x.Host
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RequestInfo) GetRawQuery() string {
|
||
if x != nil {
|
||
return x.RawQuery
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RequestInfo) GetHeaders() map[string]string {
|
||
if x != nil {
|
||
return x.Headers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RequestInfo) GetCookies() map[string]string {
|
||
if x != nil {
|
||
return x.Cookies
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *RequestInfo) GetRemoteIp() string {
|
||
if x != nil {
|
||
return x.RemoteIp
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RequestInfo) GetReferrer() string {
|
||
if x != nil {
|
||
return x.Referrer
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *RequestInfo) GetUserAgent() string {
|
||
if x != nil {
|
||
return x.UserAgent
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// PageContext mirrors blocks.PageContext.
|
||
type PageContext struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // UUID
|
||
Slug string `protobuf:"bytes,2,opt,name=slug,proto3" json:"slug,omitempty"`
|
||
Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
|
||
PostType string `protobuf:"bytes,4,opt,name=post_type,json=postType,proto3" json:"post_type,omitempty"` // "page", "post", "master", "system"
|
||
Status string `protobuf:"bytes,5,opt,name=status,proto3" json:"status,omitempty"` // "published", "draft", "scheduled"
|
||
// Slug derived from the resolved page hierarchy.
|
||
DerivedSlug string `protobuf:"bytes,6,opt,name=derived_slug,json=derivedSlug,proto3" json:"derived_slug,omitempty"`
|
||
// Effective mount path after host inheritance and normalization.
|
||
MountPath string `protobuf:"bytes,7,opt,name=mount_path,json=mountPath,proto3" json:"mount_path,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *PageContext) Reset() {
|
||
*x = PageContext{}
|
||
mi := &file_v1_render_proto_msgTypes[13]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *PageContext) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PageContext) ProtoMessage() {}
|
||
|
||
func (x *PageContext) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[13]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use PageContext.ProtoReflect.Descriptor instead.
|
||
func (*PageContext) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{13}
|
||
}
|
||
|
||
func (x *PageContext) GetId() string {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PageContext) GetSlug() string {
|
||
if x != nil {
|
||
return x.Slug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PageContext) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PageContext) GetPostType() string {
|
||
if x != nil {
|
||
return x.PostType
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PageContext) GetStatus() string {
|
||
if x != nil {
|
||
return x.Status
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PageContext) GetDerivedSlug() string {
|
||
if x != nil {
|
||
return x.DerivedSlug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PageContext) GetMountPath() string {
|
||
if x != nil {
|
||
return x.MountPath
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// PostContext mirrors blocks.PostContext.
|
||
type PostContext struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // UUID
|
||
Slug string `protobuf:"bytes,2,opt,name=slug,proto3" json:"slug,omitempty"`
|
||
Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
|
||
Excerpt string `protobuf:"bytes,4,opt,name=excerpt,proto3" json:"excerpt,omitempty"`
|
||
FeaturedImageUrl string `protobuf:"bytes,5,opt,name=featured_image_url,json=featuredImageUrl,proto3" json:"featured_image_url,omitempty"`
|
||
AuthorId string `protobuf:"bytes,6,opt,name=author_id,json=authorId,proto3" json:"author_id,omitempty"` // UUID
|
||
PublishedAt *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=published_at,json=publishedAt,proto3" json:"published_at,omitempty"`
|
||
ReadingTime int32 `protobuf:"varint,8,opt,name=reading_time,json=readingTime,proto3" json:"reading_time,omitempty"`
|
||
IsFeatured bool `protobuf:"varint,9,opt,name=is_featured,json=isFeatured,proto3" json:"is_featured,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *PostContext) Reset() {
|
||
*x = PostContext{}
|
||
mi := &file_v1_render_proto_msgTypes[14]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *PostContext) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PostContext) ProtoMessage() {}
|
||
|
||
func (x *PostContext) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[14]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use PostContext.ProtoReflect.Descriptor instead.
|
||
func (*PostContext) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{14}
|
||
}
|
||
|
||
func (x *PostContext) GetId() string {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PostContext) GetSlug() string {
|
||
if x != nil {
|
||
return x.Slug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PostContext) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PostContext) GetExcerpt() string {
|
||
if x != nil {
|
||
return x.Excerpt
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PostContext) GetFeaturedImageUrl() string {
|
||
if x != nil {
|
||
return x.FeaturedImageUrl
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PostContext) GetAuthorId() string {
|
||
if x != nil {
|
||
return x.AuthorId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PostContext) GetPublishedAt() *timestamppb.Timestamp {
|
||
if x != nil {
|
||
return x.PublishedAt
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *PostContext) GetReadingTime() int32 {
|
||
if x != nil {
|
||
return x.ReadingTime
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PostContext) GetIsFeatured() bool {
|
||
if x != nil {
|
||
return x.IsFeatured
|
||
}
|
||
return false
|
||
}
|
||
|
||
// AuthorContext mirrors blocks.AuthorContext.
|
||
type AuthorContext struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // UUID
|
||
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
||
Slug string `protobuf:"bytes,3,opt,name=slug,proto3" json:"slug,omitempty"`
|
||
Bio string `protobuf:"bytes,4,opt,name=bio,proto3" json:"bio,omitempty"`
|
||
AvatarUrl string `protobuf:"bytes,5,opt,name=avatar_url,json=avatarUrl,proto3" json:"avatar_url,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *AuthorContext) Reset() {
|
||
*x = AuthorContext{}
|
||
mi := &file_v1_render_proto_msgTypes[15]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *AuthorContext) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*AuthorContext) ProtoMessage() {}
|
||
|
||
func (x *AuthorContext) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[15]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use AuthorContext.ProtoReflect.Descriptor instead.
|
||
func (*AuthorContext) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{15}
|
||
}
|
||
|
||
func (x *AuthorContext) GetId() string {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AuthorContext) GetName() string {
|
||
if x != nil {
|
||
return x.Name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AuthorContext) GetSlug() string {
|
||
if x != nil {
|
||
return x.Slug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AuthorContext) GetBio() string {
|
||
if x != nil {
|
||
return x.Bio
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AuthorContext) GetAvatarUrl() string {
|
||
if x != nil {
|
||
return x.AvatarUrl
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// CategoryContext mirrors blocks.CategoryContext.
|
||
type CategoryContext struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // UUID
|
||
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
||
Slug string `protobuf:"bytes,3,opt,name=slug,proto3" json:"slug,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *CategoryContext) Reset() {
|
||
*x = CategoryContext{}
|
||
mi := &file_v1_render_proto_msgTypes[16]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *CategoryContext) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*CategoryContext) ProtoMessage() {}
|
||
|
||
func (x *CategoryContext) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[16]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use CategoryContext.ProtoReflect.Descriptor instead.
|
||
func (*CategoryContext) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{16}
|
||
}
|
||
|
||
func (x *CategoryContext) GetId() string {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoryContext) GetName() string {
|
||
if x != nil {
|
||
return x.Name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoryContext) GetSlug() string {
|
||
if x != nil {
|
||
return x.Slug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// MasterPageContext mirrors blocks.MasterPageContext.
|
||
type MasterPageContext struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // UUID
|
||
Slug string `protobuf:"bytes,2,opt,name=slug,proto3" json:"slug,omitempty"`
|
||
Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *MasterPageContext) Reset() {
|
||
*x = MasterPageContext{}
|
||
mi := &file_v1_render_proto_msgTypes[17]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *MasterPageContext) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*MasterPageContext) ProtoMessage() {}
|
||
|
||
func (x *MasterPageContext) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[17]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use MasterPageContext.ProtoReflect.Descriptor instead.
|
||
func (*MasterPageContext) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{17}
|
||
}
|
||
|
||
func (x *MasterPageContext) GetId() string {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *MasterPageContext) GetSlug() string {
|
||
if x != nil {
|
||
return x.Slug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *MasterPageContext) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// HumanProofBanner mirrors blocks.HumanProofBannerData.
|
||
type HumanProofBanner struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
ActiveTimeMinutes int32 `protobuf:"varint,1,opt,name=active_time_minutes,json=activeTimeMinutes,proto3" json:"active_time_minutes,omitempty"`
|
||
KeystrokeCount int32 `protobuf:"varint,2,opt,name=keystroke_count,json=keystrokeCount,proto3" json:"keystroke_count,omitempty"`
|
||
SessionCount int32 `protobuf:"varint,3,opt,name=session_count,json=sessionCount,proto3" json:"session_count,omitempty"`
|
||
PostSlug string `protobuf:"bytes,4,opt,name=post_slug,json=postSlug,proto3" json:"post_slug,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *HumanProofBanner) Reset() {
|
||
*x = HumanProofBanner{}
|
||
mi := &file_v1_render_proto_msgTypes[18]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *HumanProofBanner) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*HumanProofBanner) ProtoMessage() {}
|
||
|
||
func (x *HumanProofBanner) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[18]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use HumanProofBanner.ProtoReflect.Descriptor instead.
|
||
func (*HumanProofBanner) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{18}
|
||
}
|
||
|
||
func (x *HumanProofBanner) GetActiveTimeMinutes() int32 {
|
||
if x != nil {
|
||
return x.ActiveTimeMinutes
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *HumanProofBanner) GetKeystrokeCount() int32 {
|
||
if x != nil {
|
||
return x.KeystrokeCount
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *HumanProofBanner) GetSessionCount() int32 {
|
||
if x != nil {
|
||
return x.SessionCount
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *HumanProofBanner) GetPostSlug() string {
|
||
if x != nil {
|
||
return x.PostSlug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// DetailRow mirrors blocks.DetailRowInfo.
|
||
type DetailRow struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
TableId string `protobuf:"bytes,1,opt,name=table_id,json=tableId,proto3" json:"table_id,omitempty"`
|
||
RowId string `protobuf:"bytes,2,opt,name=row_id,json=rowId,proto3" json:"row_id,omitempty"`
|
||
// JSON encoding of the row data map.
|
||
DataJson []byte `protobuf:"bytes,3,opt,name=data_json,json=dataJson,proto3" json:"data_json,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *DetailRow) Reset() {
|
||
*x = DetailRow{}
|
||
mi := &file_v1_render_proto_msgTypes[19]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *DetailRow) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*DetailRow) ProtoMessage() {}
|
||
|
||
func (x *DetailRow) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[19]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use DetailRow.ProtoReflect.Descriptor instead.
|
||
func (*DetailRow) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{19}
|
||
}
|
||
|
||
func (x *DetailRow) GetTableId() string {
|
||
if x != nil {
|
||
return x.TableId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *DetailRow) GetRowId() string {
|
||
if x != nil {
|
||
return x.RowId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *DetailRow) GetDataJson() []byte {
|
||
if x != nil {
|
||
return x.DataJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// BlockContext mirrors blocks.BlockContext (the pongo2 data struct) 1:1.
|
||
// map[string]any fields travel as JSON bytes.
|
||
type BlockContext struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
|
||
Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"`
|
||
Slug string `protobuf:"bytes,3,opt,name=slug,proto3" json:"slug,omitempty"`
|
||
PageId string `protobuf:"bytes,4,opt,name=page_id,json=pageId,proto3" json:"page_id,omitempty"`
|
||
PageTitle string `protobuf:"bytes,5,opt,name=page_title,json=pageTitle,proto3" json:"page_title,omitempty"`
|
||
TemplateKey string `protobuf:"bytes,6,opt,name=template_key,json=templateKey,proto3" json:"template_key,omitempty"`
|
||
IsEditor bool `protobuf:"varint,7,opt,name=is_editor,json=isEditor,proto3" json:"is_editor,omitempty"`
|
||
Timestamp int64 `protobuf:"varint,8,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
|
||
Now *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=now,proto3" json:"now,omitempty"`
|
||
IsLoggedIn bool `protobuf:"varint,10,opt,name=is_logged_in,json=isLoggedIn,proto3" json:"is_logged_in,omitempty"`
|
||
UserId string `protobuf:"bytes,11,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
|
||
UserEmail string `protobuf:"bytes,12,opt,name=user_email,json=userEmail,proto3" json:"user_email,omitempty"`
|
||
UserRole string `protobuf:"bytes,13,opt,name=user_role,json=userRole,proto3" json:"user_role,omitempty"`
|
||
Method string `protobuf:"bytes,14,opt,name=method,proto3" json:"method,omitempty"`
|
||
Host string `protobuf:"bytes,15,opt,name=host,proto3" json:"host,omitempty"`
|
||
Query map[string]string `protobuf:"bytes,16,rep,name=query,proto3" json:"query,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||
Referrer string `protobuf:"bytes,17,opt,name=referrer,proto3" json:"referrer,omitempty"`
|
||
UserAgent string `protobuf:"bytes,18,opt,name=user_agent,json=userAgent,proto3" json:"user_agent,omitempty"`
|
||
Ip string `protobuf:"bytes,19,opt,name=ip,proto3" json:"ip,omitempty"`
|
||
Cookies map[string]string `protobuf:"bytes,20,rep,name=cookies,proto3" json:"cookies,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||
Headers map[string]string `protobuf:"bytes,21,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
|
||
Country string `protobuf:"bytes,22,opt,name=country,proto3" json:"country,omitempty"`
|
||
City string `protobuf:"bytes,23,opt,name=city,proto3" json:"city,omitempty"`
|
||
Timezone string `protobuf:"bytes,24,opt,name=timezone,proto3" json:"timezone,omitempty"`
|
||
CurrentAuthorJson []byte `protobuf:"bytes,25,opt,name=current_author_json,json=currentAuthorJson,proto3" json:"current_author_json,omitempty"`
|
||
CurrentPostJson []byte `protobuf:"bytes,26,opt,name=current_post_json,json=currentPostJson,proto3" json:"current_post_json,omitempty"`
|
||
CurrentCategoryJson []byte `protobuf:"bytes,27,opt,name=current_category_json,json=currentCategoryJson,proto3" json:"current_category_json,omitempty"`
|
||
SiteJson []byte `protobuf:"bytes,28,opt,name=site_json,json=siteJson,proto3" json:"site_json,omitempty"`
|
||
IsPublicLoggedIn bool `protobuf:"varint,29,opt,name=is_public_logged_in,json=isPublicLoggedIn,proto3" json:"is_public_logged_in,omitempty"`
|
||
PublicUserId string `protobuf:"bytes,30,opt,name=public_user_id,json=publicUserId,proto3" json:"public_user_id,omitempty"`
|
||
PublicUsername string `protobuf:"bytes,31,opt,name=public_username,json=publicUsername,proto3" json:"public_username,omitempty"`
|
||
PublicDisplayName string `protobuf:"bytes,32,opt,name=public_display_name,json=publicDisplayName,proto3" json:"public_display_name,omitempty"`
|
||
PublicEmailVerified bool `protobuf:"varint,33,opt,name=public_email_verified,json=publicEmailVerified,proto3" json:"public_email_verified,omitempty"`
|
||
DetailRowId string `protobuf:"bytes,34,opt,name=detail_row_id,json=detailRowId,proto3" json:"detail_row_id,omitempty"`
|
||
DetailTableId string `protobuf:"bytes,35,opt,name=detail_table_id,json=detailTableId,proto3" json:"detail_table_id,omitempty"`
|
||
DetailRowDataJson []byte `protobuf:"bytes,36,opt,name=detail_row_data_json,json=detailRowDataJson,proto3" json:"detail_row_data_json,omitempty"`
|
||
BlogIndexUrl string `protobuf:"bytes,37,opt,name=blog_index_url,json=blogIndexUrl,proto3" json:"blog_index_url,omitempty"`
|
||
CategoryPageUrl string `protobuf:"bytes,38,opt,name=category_page_url,json=categoryPageUrl,proto3" json:"category_page_url,omitempty"`
|
||
// Slug derived from the resolved page hierarchy.
|
||
DerivedSlug string `protobuf:"bytes,39,opt,name=derived_slug,json=derivedSlug,proto3" json:"derived_slug,omitempty"`
|
||
// Effective mount path after host inheritance and normalization.
|
||
MountPath string `protobuf:"bytes,40,opt,name=mount_path,json=mountPath,proto3" json:"mount_path,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *BlockContext) Reset() {
|
||
*x = BlockContext{}
|
||
mi := &file_v1_render_proto_msgTypes[20]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *BlockContext) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*BlockContext) ProtoMessage() {}
|
||
|
||
func (x *BlockContext) ProtoReflect() protoreflect.Message {
|
||
mi := &file_v1_render_proto_msgTypes[20]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use BlockContext.ProtoReflect.Descriptor instead.
|
||
func (*BlockContext) Descriptor() ([]byte, []int) {
|
||
return file_v1_render_proto_rawDescGZIP(), []int{20}
|
||
}
|
||
|
||
func (x *BlockContext) GetUrl() string {
|
||
if x != nil {
|
||
return x.Url
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetPath() string {
|
||
if x != nil {
|
||
return x.Path
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetSlug() string {
|
||
if x != nil {
|
||
return x.Slug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetPageId() string {
|
||
if x != nil {
|
||
return x.PageId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetPageTitle() string {
|
||
if x != nil {
|
||
return x.PageTitle
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetTemplateKey() string {
|
||
if x != nil {
|
||
return x.TemplateKey
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetIsEditor() bool {
|
||
if x != nil {
|
||
return x.IsEditor
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *BlockContext) GetTimestamp() int64 {
|
||
if x != nil {
|
||
return x.Timestamp
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *BlockContext) GetNow() *timestamppb.Timestamp {
|
||
if x != nil {
|
||
return x.Now
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetIsLoggedIn() bool {
|
||
if x != nil {
|
||
return x.IsLoggedIn
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *BlockContext) GetUserId() string {
|
||
if x != nil {
|
||
return x.UserId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetUserEmail() string {
|
||
if x != nil {
|
||
return x.UserEmail
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetUserRole() string {
|
||
if x != nil {
|
||
return x.UserRole
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetMethod() string {
|
||
if x != nil {
|
||
return x.Method
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetHost() string {
|
||
if x != nil {
|
||
return x.Host
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetQuery() map[string]string {
|
||
if x != nil {
|
||
return x.Query
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetReferrer() string {
|
||
if x != nil {
|
||
return x.Referrer
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetUserAgent() string {
|
||
if x != nil {
|
||
return x.UserAgent
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetIp() string {
|
||
if x != nil {
|
||
return x.Ip
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetCookies() map[string]string {
|
||
if x != nil {
|
||
return x.Cookies
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetHeaders() map[string]string {
|
||
if x != nil {
|
||
return x.Headers
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetCountry() string {
|
||
if x != nil {
|
||
return x.Country
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetCity() string {
|
||
if x != nil {
|
||
return x.City
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetTimezone() string {
|
||
if x != nil {
|
||
return x.Timezone
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetCurrentAuthorJson() []byte {
|
||
if x != nil {
|
||
return x.CurrentAuthorJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetCurrentPostJson() []byte {
|
||
if x != nil {
|
||
return x.CurrentPostJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetCurrentCategoryJson() []byte {
|
||
if x != nil {
|
||
return x.CurrentCategoryJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetSiteJson() []byte {
|
||
if x != nil {
|
||
return x.SiteJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetIsPublicLoggedIn() bool {
|
||
if x != nil {
|
||
return x.IsPublicLoggedIn
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *BlockContext) GetPublicUserId() string {
|
||
if x != nil {
|
||
return x.PublicUserId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetPublicUsername() string {
|
||
if x != nil {
|
||
return x.PublicUsername
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetPublicDisplayName() string {
|
||
if x != nil {
|
||
return x.PublicDisplayName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetPublicEmailVerified() bool {
|
||
if x != nil {
|
||
return x.PublicEmailVerified
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (x *BlockContext) GetDetailRowId() string {
|
||
if x != nil {
|
||
return x.DetailRowId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetDetailTableId() string {
|
||
if x != nil {
|
||
return x.DetailTableId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetDetailRowDataJson() []byte {
|
||
if x != nil {
|
||
return x.DetailRowDataJson
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *BlockContext) GetBlogIndexUrl() string {
|
||
if x != nil {
|
||
return x.BlogIndexUrl
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetCategoryPageUrl() string {
|
||
if x != nil {
|
||
return x.CategoryPageUrl
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetDerivedSlug() string {
|
||
if x != nil {
|
||
return x.DerivedSlug
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *BlockContext) GetMountPath() string {
|
||
if x != nil {
|
||
return x.MountPath
|
||
}
|
||
return ""
|
||
}
|
||
|
||
var File_v1_render_proto protoreflect.FileDescriptor
|
||
|
||
const file_v1_render_proto_rawDesc = "" +
|
||
"\n" +
|
||
"\x0fv1/render.proto\x12\x06abi.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\x92\x01\n" +
|
||
"\x12RenderBlockRequest\x12\x1b\n" +
|
||
"\tblock_key\x18\x01 \x01(\tR\bblockKey\x12!\n" +
|
||
"\fcontent_json\x18\x02 \x01(\fR\vcontentJson\x12<\n" +
|
||
"\x0erender_context\x18\x03 \x01(\v2\x15.abi.v1.RenderContextR\rrenderContext\"Y\n" +
|
||
"\x13RenderBlockResponse\x12\x12\n" +
|
||
"\x04html\x18\x01 \x01(\tR\x04html\x12.\n" +
|
||
"\apowered\x18\x02 \x01(\v2\x14.abi.v1.PoweredBlockR\apowered\"\x9e\x01\n" +
|
||
"\fPoweredBlock\x12\x1a\n" +
|
||
"\btemplate\x18\x01 \x01(\tR\btemplate\x12\x1b\n" +
|
||
"\tdata_json\x18\x02 \x01(\fR\bdataJson\x12\x1f\n" +
|
||
"\vstatus_code\x18\x03 \x01(\x05R\n" +
|
||
"statusCode\x124\n" +
|
||
"\bmetadata\x18\x04 \x01(\v2\x18.abi.v1.DocumentMetadataR\bmetadata\"\xa4\x01\n" +
|
||
"\x10DocumentMetadata\x12\x14\n" +
|
||
"\x05title\x18\x01 \x01(\tR\x05title\x12 \n" +
|
||
"\vdescription\x18\x02 \x01(\tR\vdescription\x12#\n" +
|
||
"\rcanonical_url\x18\x03 \x01(\tR\fcanonicalUrl\x12\x1b\n" +
|
||
"\timage_url\x18\x04 \x01(\tR\bimageUrl\x12\x16\n" +
|
||
"\x06robots\x18\x05 \x01(\tR\x06robots\"\x93\x01\n" +
|
||
"\x15RenderTemplateRequest\x12!\n" +
|
||
"\ftemplate_key\x18\x01 \x01(\tR\vtemplateKey\x12\x19\n" +
|
||
"\bdoc_json\x18\x02 \x01(\fR\adocJson\x12<\n" +
|
||
"\x0erender_context\x18\x03 \x01(\v2\x15.abi.v1.RenderContextR\rrenderContext\"T\n" +
|
||
"\x16RenderTemplateResponse\x124\n" +
|
||
"\bdocument\x18\x02 \x01(\v2\x18.abi.v1.TemplateDocumentR\bdocumentJ\x04\b\x01\x10\x02\"\x96\x03\n" +
|
||
"\x10TemplateDocument\x12\x1b\n" +
|
||
"\tbody_html\x18\x01 \x01(\fR\bbodyHtml\x12\x1d\n" +
|
||
"\n" +
|
||
"body_class\x18\x02 \x01(\tR\tbodyClass\x12\x12\n" +
|
||
"\x04lang\x18\x03 \x01(\tR\x04lang\x12&\n" +
|
||
"\x0fhead_extra_html\x18\x04 \x01(\fR\rheadExtraHtml\x12-\n" +
|
||
"\x13body_end_extra_html\x18\x05 \x01(\fR\x10bodyEndExtraHtml\x12F\n" +
|
||
"\n" +
|
||
"html_attrs\x18\x06 \x03(\v2'.abi.v1.TemplateDocument.HtmlAttrsEntryR\thtmlAttrs\x12\x1f\n" +
|
||
"\vstatus_code\x18\a \x01(\x05R\n" +
|
||
"statusCode\x124\n" +
|
||
"\bmetadata\x18\b \x01(\v2\x18.abi.v1.DocumentMetadataR\bmetadata\x1a<\n" +
|
||
"\x0eHtmlAttrsEntry\x12\x10\n" +
|
||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\x88\x01\n" +
|
||
"\x10RenderTagRequest\x12\x19\n" +
|
||
"\btag_name\x18\x01 \x01(\tR\atagName\x12\x1b\n" +
|
||
"\targs_json\x18\x02 \x01(\fR\bargsJson\x12<\n" +
|
||
"\x0erender_context\x18\x03 \x01(\v2\x15.abi.v1.RenderContextR\rrenderContext\"=\n" +
|
||
"\x11RenderTagResponse\x12\x12\n" +
|
||
"\x04html\x18\x01 \x01(\tR\x04html\x12\x14\n" +
|
||
"\x05error\x18\x02 \x01(\tR\x05error\"h\n" +
|
||
"\x12ApplyFilterRequest\x12\x1f\n" +
|
||
"\vfilter_name\x18\x01 \x01(\tR\n" +
|
||
"filterName\x12\x14\n" +
|
||
"\x05input\x18\x02 \x01(\tR\x05input\x12\x1b\n" +
|
||
"\targs_json\x18\x03 \x01(\fR\bargsJson\"C\n" +
|
||
"\x13ApplyFilterResponse\x12\x16\n" +
|
||
"\x06output\x18\x01 \x01(\tR\x06output\x12\x14\n" +
|
||
"\x05error\x18\x02 \x01(\tR\x05error\"\x80\a\n" +
|
||
"\rRenderContext\x12-\n" +
|
||
"\arequest\x18\x01 \x01(\v2\x13.abi.v1.RequestInfoR\arequest\x129\n" +
|
||
"\rblock_context\x18\x02 \x01(\v2\x14.abi.v1.BlockContextR\fblockContext\x12!\n" +
|
||
"\ftemplate_key\x18\x03 \x01(\tR\vtemplateKey\x12'\n" +
|
||
"\x04page\x18\x04 \x01(\v2\x13.abi.v1.PageContextR\x04page\x12'\n" +
|
||
"\x04post\x18\x05 \x01(\v2\x13.abi.v1.PostContextR\x04post\x12-\n" +
|
||
"\x06author\x18\x06 \x01(\v2\x15.abi.v1.AuthorContextR\x06author\x123\n" +
|
||
"\bcategory\x18\a \x01(\v2\x17.abi.v1.CategoryContextR\bcategory\x12:\n" +
|
||
"\vmaster_page\x18\b \x01(\v2\x19.abi.v1.MasterPageContextR\n" +
|
||
"masterPage\x12%\n" +
|
||
"\x0erequested_path\x18\t \x01(\tR\rrequestedPath\x12O\n" +
|
||
"\x0einjected_slots\x18\n" +
|
||
" \x03(\v2(.abi.v1.RenderContext.InjectedSlotsEntryR\rinjectedSlots\x12\x1b\n" +
|
||
"\tis_editor\x18\v \x01(\bR\bisEditor\x12%\n" +
|
||
"\x0eexpected_slots\x18\f \x03(\tR\rexpectedSlots\x12\x19\n" +
|
||
"\bblock_id\x18\r \x01(\tR\ablockId\x12&\n" +
|
||
"\x0fcurrent_page_id\x18\x0e \x01(\tR\rcurrentPageId\x12F\n" +
|
||
"\x12human_proof_banner\x18\x0f \x01(\v2\x18.abi.v1.HumanProofBannerR\x10humanProofBanner\x120\n" +
|
||
"\n" +
|
||
"detail_row\x18\x10 \x01(\v2\x11.abi.v1.DetailRowR\tdetailRow\x12\x1d\n" +
|
||
"\n" +
|
||
"theme_json\x18\x11 \x01(\fR\tthemeJson\x12\x16\n" +
|
||
"\x06locale\x18\x12 \x01(\tR\x06locale\x1a@\n" +
|
||
"\x12InjectedSlotsEntry\x12\x10\n" +
|
||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xc4\x03\n" +
|
||
"\vRequestInfo\x12\x16\n" +
|
||
"\x06method\x18\x01 \x01(\tR\x06method\x12\x10\n" +
|
||
"\x03url\x18\x02 \x01(\tR\x03url\x12\x12\n" +
|
||
"\x04path\x18\x03 \x01(\tR\x04path\x12\x12\n" +
|
||
"\x04host\x18\x04 \x01(\tR\x04host\x12\x1b\n" +
|
||
"\traw_query\x18\x05 \x01(\tR\brawQuery\x12:\n" +
|
||
"\aheaders\x18\x06 \x03(\v2 .abi.v1.RequestInfo.HeadersEntryR\aheaders\x12:\n" +
|
||
"\acookies\x18\a \x03(\v2 .abi.v1.RequestInfo.CookiesEntryR\acookies\x12\x1b\n" +
|
||
"\tremote_ip\x18\b \x01(\tR\bremoteIp\x12\x1a\n" +
|
||
"\breferrer\x18\t \x01(\tR\breferrer\x12\x1d\n" +
|
||
"\n" +
|
||
"user_agent\x18\n" +
|
||
" \x01(\tR\tuserAgent\x1a:\n" +
|
||
"\fHeadersEntry\x12\x10\n" +
|
||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a:\n" +
|
||
"\fCookiesEntry\x12\x10\n" +
|
||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xbe\x01\n" +
|
||
"\vPageContext\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
|
||
"\x04slug\x18\x02 \x01(\tR\x04slug\x12\x14\n" +
|
||
"\x05title\x18\x03 \x01(\tR\x05title\x12\x1b\n" +
|
||
"\tpost_type\x18\x04 \x01(\tR\bpostType\x12\x16\n" +
|
||
"\x06status\x18\x05 \x01(\tR\x06status\x12!\n" +
|
||
"\fderived_slug\x18\x06 \x01(\tR\vderivedSlug\x12\x1d\n" +
|
||
"\n" +
|
||
"mount_path\x18\a \x01(\tR\tmountPath\"\xaf\x02\n" +
|
||
"\vPostContext\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
|
||
"\x04slug\x18\x02 \x01(\tR\x04slug\x12\x14\n" +
|
||
"\x05title\x18\x03 \x01(\tR\x05title\x12\x18\n" +
|
||
"\aexcerpt\x18\x04 \x01(\tR\aexcerpt\x12,\n" +
|
||
"\x12featured_image_url\x18\x05 \x01(\tR\x10featuredImageUrl\x12\x1b\n" +
|
||
"\tauthor_id\x18\x06 \x01(\tR\bauthorId\x12=\n" +
|
||
"\fpublished_at\x18\a \x01(\v2\x1a.google.protobuf.TimestampR\vpublishedAt\x12!\n" +
|
||
"\freading_time\x18\b \x01(\x05R\vreadingTime\x12\x1f\n" +
|
||
"\vis_featured\x18\t \x01(\bR\n" +
|
||
"isFeatured\"x\n" +
|
||
"\rAuthorContext\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
|
||
"\x04name\x18\x02 \x01(\tR\x04name\x12\x12\n" +
|
||
"\x04slug\x18\x03 \x01(\tR\x04slug\x12\x10\n" +
|
||
"\x03bio\x18\x04 \x01(\tR\x03bio\x12\x1d\n" +
|
||
"\n" +
|
||
"avatar_url\x18\x05 \x01(\tR\tavatarUrl\"I\n" +
|
||
"\x0fCategoryContext\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
|
||
"\x04name\x18\x02 \x01(\tR\x04name\x12\x12\n" +
|
||
"\x04slug\x18\x03 \x01(\tR\x04slug\"M\n" +
|
||
"\x11MasterPageContext\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
|
||
"\x04slug\x18\x02 \x01(\tR\x04slug\x12\x14\n" +
|
||
"\x05title\x18\x03 \x01(\tR\x05title\"\xad\x01\n" +
|
||
"\x10HumanProofBanner\x12.\n" +
|
||
"\x13active_time_minutes\x18\x01 \x01(\x05R\x11activeTimeMinutes\x12'\n" +
|
||
"\x0fkeystroke_count\x18\x02 \x01(\x05R\x0ekeystrokeCount\x12#\n" +
|
||
"\rsession_count\x18\x03 \x01(\x05R\fsessionCount\x12\x1b\n" +
|
||
"\tpost_slug\x18\x04 \x01(\tR\bpostSlug\"Z\n" +
|
||
"\tDetailRow\x12\x19\n" +
|
||
"\btable_id\x18\x01 \x01(\tR\atableId\x12\x15\n" +
|
||
"\x06row_id\x18\x02 \x01(\tR\x05rowId\x12\x1b\n" +
|
||
"\tdata_json\x18\x03 \x01(\fR\bdataJson\"\xc7\f\n" +
|
||
"\fBlockContext\x12\x10\n" +
|
||
"\x03url\x18\x01 \x01(\tR\x03url\x12\x12\n" +
|
||
"\x04path\x18\x02 \x01(\tR\x04path\x12\x12\n" +
|
||
"\x04slug\x18\x03 \x01(\tR\x04slug\x12\x17\n" +
|
||
"\apage_id\x18\x04 \x01(\tR\x06pageId\x12\x1d\n" +
|
||
"\n" +
|
||
"page_title\x18\x05 \x01(\tR\tpageTitle\x12!\n" +
|
||
"\ftemplate_key\x18\x06 \x01(\tR\vtemplateKey\x12\x1b\n" +
|
||
"\tis_editor\x18\a \x01(\bR\bisEditor\x12\x1c\n" +
|
||
"\ttimestamp\x18\b \x01(\x03R\ttimestamp\x12,\n" +
|
||
"\x03now\x18\t \x01(\v2\x1a.google.protobuf.TimestampR\x03now\x12 \n" +
|
||
"\fis_logged_in\x18\n" +
|
||
" \x01(\bR\n" +
|
||
"isLoggedIn\x12\x17\n" +
|
||
"\auser_id\x18\v \x01(\tR\x06userId\x12\x1d\n" +
|
||
"\n" +
|
||
"user_email\x18\f \x01(\tR\tuserEmail\x12\x1b\n" +
|
||
"\tuser_role\x18\r \x01(\tR\buserRole\x12\x16\n" +
|
||
"\x06method\x18\x0e \x01(\tR\x06method\x12\x12\n" +
|
||
"\x04host\x18\x0f \x01(\tR\x04host\x125\n" +
|
||
"\x05query\x18\x10 \x03(\v2\x1f.abi.v1.BlockContext.QueryEntryR\x05query\x12\x1a\n" +
|
||
"\breferrer\x18\x11 \x01(\tR\breferrer\x12\x1d\n" +
|
||
"\n" +
|
||
"user_agent\x18\x12 \x01(\tR\tuserAgent\x12\x0e\n" +
|
||
"\x02ip\x18\x13 \x01(\tR\x02ip\x12;\n" +
|
||
"\acookies\x18\x14 \x03(\v2!.abi.v1.BlockContext.CookiesEntryR\acookies\x12;\n" +
|
||
"\aheaders\x18\x15 \x03(\v2!.abi.v1.BlockContext.HeadersEntryR\aheaders\x12\x18\n" +
|
||
"\acountry\x18\x16 \x01(\tR\acountry\x12\x12\n" +
|
||
"\x04city\x18\x17 \x01(\tR\x04city\x12\x1a\n" +
|
||
"\btimezone\x18\x18 \x01(\tR\btimezone\x12.\n" +
|
||
"\x13current_author_json\x18\x19 \x01(\fR\x11currentAuthorJson\x12*\n" +
|
||
"\x11current_post_json\x18\x1a \x01(\fR\x0fcurrentPostJson\x122\n" +
|
||
"\x15current_category_json\x18\x1b \x01(\fR\x13currentCategoryJson\x12\x1b\n" +
|
||
"\tsite_json\x18\x1c \x01(\fR\bsiteJson\x12-\n" +
|
||
"\x13is_public_logged_in\x18\x1d \x01(\bR\x10isPublicLoggedIn\x12$\n" +
|
||
"\x0epublic_user_id\x18\x1e \x01(\tR\fpublicUserId\x12'\n" +
|
||
"\x0fpublic_username\x18\x1f \x01(\tR\x0epublicUsername\x12.\n" +
|
||
"\x13public_display_name\x18 \x01(\tR\x11publicDisplayName\x122\n" +
|
||
"\x15public_email_verified\x18! \x01(\bR\x13publicEmailVerified\x12\"\n" +
|
||
"\rdetail_row_id\x18\" \x01(\tR\vdetailRowId\x12&\n" +
|
||
"\x0fdetail_table_id\x18# \x01(\tR\rdetailTableId\x12/\n" +
|
||
"\x14detail_row_data_json\x18$ \x01(\fR\x11detailRowDataJson\x12$\n" +
|
||
"\x0eblog_index_url\x18% \x01(\tR\fblogIndexUrl\x12*\n" +
|
||
"\x11category_page_url\x18& \x01(\tR\x0fcategoryPageUrl\x12!\n" +
|
||
"\fderived_slug\x18' \x01(\tR\vderivedSlug\x12\x1d\n" +
|
||
"\n" +
|
||
"mount_path\x18( \x01(\tR\tmountPath\x1a8\n" +
|
||
"\n" +
|
||
"QueryEntry\x12\x10\n" +
|
||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a:\n" +
|
||
"\fCookiesEntry\x12\x10\n" +
|
||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a:\n" +
|
||
"\fHeadersEntry\x12\x10\n" +
|
||
"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
|
||
"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01B5Z3git.dev.alexdunmow.com/block/pluginsdk/abi/v1;abiv1b\x06proto3"
|
||
|
||
var (
|
||
file_v1_render_proto_rawDescOnce sync.Once
|
||
file_v1_render_proto_rawDescData []byte
|
||
)
|
||
|
||
func file_v1_render_proto_rawDescGZIP() []byte {
|
||
file_v1_render_proto_rawDescOnce.Do(func() {
|
||
file_v1_render_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_v1_render_proto_rawDesc), len(file_v1_render_proto_rawDesc)))
|
||
})
|
||
return file_v1_render_proto_rawDescData
|
||
}
|
||
|
||
var file_v1_render_proto_msgTypes = make([]protoimpl.MessageInfo, 28)
|
||
var file_v1_render_proto_goTypes = []any{
|
||
(*RenderBlockRequest)(nil), // 0: abi.v1.RenderBlockRequest
|
||
(*RenderBlockResponse)(nil), // 1: abi.v1.RenderBlockResponse
|
||
(*PoweredBlock)(nil), // 2: abi.v1.PoweredBlock
|
||
(*DocumentMetadata)(nil), // 3: abi.v1.DocumentMetadata
|
||
(*RenderTemplateRequest)(nil), // 4: abi.v1.RenderTemplateRequest
|
||
(*RenderTemplateResponse)(nil), // 5: abi.v1.RenderTemplateResponse
|
||
(*TemplateDocument)(nil), // 6: abi.v1.TemplateDocument
|
||
(*RenderTagRequest)(nil), // 7: abi.v1.RenderTagRequest
|
||
(*RenderTagResponse)(nil), // 8: abi.v1.RenderTagResponse
|
||
(*ApplyFilterRequest)(nil), // 9: abi.v1.ApplyFilterRequest
|
||
(*ApplyFilterResponse)(nil), // 10: abi.v1.ApplyFilterResponse
|
||
(*RenderContext)(nil), // 11: abi.v1.RenderContext
|
||
(*RequestInfo)(nil), // 12: abi.v1.RequestInfo
|
||
(*PageContext)(nil), // 13: abi.v1.PageContext
|
||
(*PostContext)(nil), // 14: abi.v1.PostContext
|
||
(*AuthorContext)(nil), // 15: abi.v1.AuthorContext
|
||
(*CategoryContext)(nil), // 16: abi.v1.CategoryContext
|
||
(*MasterPageContext)(nil), // 17: abi.v1.MasterPageContext
|
||
(*HumanProofBanner)(nil), // 18: abi.v1.HumanProofBanner
|
||
(*DetailRow)(nil), // 19: abi.v1.DetailRow
|
||
(*BlockContext)(nil), // 20: abi.v1.BlockContext
|
||
nil, // 21: abi.v1.TemplateDocument.HtmlAttrsEntry
|
||
nil, // 22: abi.v1.RenderContext.InjectedSlotsEntry
|
||
nil, // 23: abi.v1.RequestInfo.HeadersEntry
|
||
nil, // 24: abi.v1.RequestInfo.CookiesEntry
|
||
nil, // 25: abi.v1.BlockContext.QueryEntry
|
||
nil, // 26: abi.v1.BlockContext.CookiesEntry
|
||
nil, // 27: abi.v1.BlockContext.HeadersEntry
|
||
(*timestamppb.Timestamp)(nil), // 28: google.protobuf.Timestamp
|
||
}
|
||
var file_v1_render_proto_depIdxs = []int32{
|
||
11, // 0: abi.v1.RenderBlockRequest.render_context:type_name -> abi.v1.RenderContext
|
||
2, // 1: abi.v1.RenderBlockResponse.powered:type_name -> abi.v1.PoweredBlock
|
||
3, // 2: abi.v1.PoweredBlock.metadata:type_name -> abi.v1.DocumentMetadata
|
||
11, // 3: abi.v1.RenderTemplateRequest.render_context:type_name -> abi.v1.RenderContext
|
||
6, // 4: abi.v1.RenderTemplateResponse.document:type_name -> abi.v1.TemplateDocument
|
||
21, // 5: abi.v1.TemplateDocument.html_attrs:type_name -> abi.v1.TemplateDocument.HtmlAttrsEntry
|
||
3, // 6: abi.v1.TemplateDocument.metadata:type_name -> abi.v1.DocumentMetadata
|
||
11, // 7: abi.v1.RenderTagRequest.render_context:type_name -> abi.v1.RenderContext
|
||
12, // 8: abi.v1.RenderContext.request:type_name -> abi.v1.RequestInfo
|
||
20, // 9: abi.v1.RenderContext.block_context:type_name -> abi.v1.BlockContext
|
||
13, // 10: abi.v1.RenderContext.page:type_name -> abi.v1.PageContext
|
||
14, // 11: abi.v1.RenderContext.post:type_name -> abi.v1.PostContext
|
||
15, // 12: abi.v1.RenderContext.author:type_name -> abi.v1.AuthorContext
|
||
16, // 13: abi.v1.RenderContext.category:type_name -> abi.v1.CategoryContext
|
||
17, // 14: abi.v1.RenderContext.master_page:type_name -> abi.v1.MasterPageContext
|
||
22, // 15: abi.v1.RenderContext.injected_slots:type_name -> abi.v1.RenderContext.InjectedSlotsEntry
|
||
18, // 16: abi.v1.RenderContext.human_proof_banner:type_name -> abi.v1.HumanProofBanner
|
||
19, // 17: abi.v1.RenderContext.detail_row:type_name -> abi.v1.DetailRow
|
||
23, // 18: abi.v1.RequestInfo.headers:type_name -> abi.v1.RequestInfo.HeadersEntry
|
||
24, // 19: abi.v1.RequestInfo.cookies:type_name -> abi.v1.RequestInfo.CookiesEntry
|
||
28, // 20: abi.v1.PostContext.published_at:type_name -> google.protobuf.Timestamp
|
||
28, // 21: abi.v1.BlockContext.now:type_name -> google.protobuf.Timestamp
|
||
25, // 22: abi.v1.BlockContext.query:type_name -> abi.v1.BlockContext.QueryEntry
|
||
26, // 23: abi.v1.BlockContext.cookies:type_name -> abi.v1.BlockContext.CookiesEntry
|
||
27, // 24: abi.v1.BlockContext.headers:type_name -> abi.v1.BlockContext.HeadersEntry
|
||
25, // [25:25] is the sub-list for method output_type
|
||
25, // [25:25] is the sub-list for method input_type
|
||
25, // [25:25] is the sub-list for extension type_name
|
||
25, // [25:25] is the sub-list for extension extendee
|
||
0, // [0:25] is the sub-list for field type_name
|
||
}
|
||
|
||
func init() { file_v1_render_proto_init() }
|
||
func file_v1_render_proto_init() {
|
||
if File_v1_render_proto != nil {
|
||
return
|
||
}
|
||
type x struct{}
|
||
out := protoimpl.TypeBuilder{
|
||
File: protoimpl.DescBuilder{
|
||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||
RawDescriptor: unsafe.Slice(unsafe.StringData(file_v1_render_proto_rawDesc), len(file_v1_render_proto_rawDesc)),
|
||
NumEnums: 0,
|
||
NumMessages: 28,
|
||
NumExtensions: 0,
|
||
NumServices: 0,
|
||
},
|
||
GoTypes: file_v1_render_proto_goTypes,
|
||
DependencyIndexes: file_v1_render_proto_depIdxs,
|
||
MessageInfos: file_v1_render_proto_msgTypes,
|
||
}.Build()
|
||
File_v1_render_proto = out.File
|
||
file_v1_render_proto_goTypes = nil
|
||
file_v1_render_proto_depIdxs = nil
|
||
}
|