Defines the host<->guest wire contract for the .so -> wazero migration as a repo-local buf module (abi/proto/v1, generated Go in abi/v1): - manifest.proto: PluginManifest mirroring every static field of plugin.PluginRegistration (abi_version, deps, block/template registrations, admin pages, settings schema, theme presets, fonts, master pages, AI actions, RBAC method roles, CSS manifest, icon packs, directory extensions, job types, RAG fetcher types, settings panel, hook flags, core service bindings) - invoke.proto: bn_invoke envelope, Hook catalog (RENDER_BLOCK, RENDER_TEMPLATE, HANDLE_HTTP, JOB, LOAD, UNLOAD, RAG_FETCH, MEDIA_HOOK, DESCRIBE), AbiError, and job/lifecycle/rag/media/describe payloads - render.proto: RenderBlock/RenderTemplate payloads + RenderContext enumerating every ctx value from blocks/context.go (incl. BlockContext 1:1) - http.proto: buffered HttpRequest/HttpResponse for HANDLE_HTTP - db.proto: guest sql-driver messages (DbValue oneof over pgx-mappable types, query/exec/tx with host-side tx handles, SQLSTATE-carrying DbError) - capability.proto: HostCall envelope + one request/response pair per CoreServices interface method (content, settings+update, gating, crypto, menus, datasources, users, subscriptions, media.deposit, email.send, ai.text_call, ai.tools.register, bridge, jobs.submit, embeddings, rag, reviews, badges.refresh) The abi/ buf module is deliberately separate from the repo-root config: proto/ is the shared block/proto submodule (service API contracts); the ABI is SDK-internal and versions in lockstep with the guest shim. New `make abi` target runs buf lint + generate. docs/wasm-abi.md documents the ptr+len calling convention (bn_alloc, bn_invoke, packed u64), hook catalog, error semantics, abi_version evolution rules, and the full registration/ CoreServices coverage tables. Verified: `cd abi && buf lint` exit 0; `go build ./...` exit 0. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
1666 lines
52 KiB
Go
1666 lines
52 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"`
|
|
Html string `protobuf:"bytes,1,opt,name=html,proto3" json:"html,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 ""
|
|
}
|
|
|
|
// 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[2]
|
|
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[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 RenderTemplateRequest.ProtoReflect.Descriptor instead.
|
|
func (*RenderTemplateRequest) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
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"`
|
|
Html []byte `protobuf:"bytes,1,opt,name=html,proto3" json:"html,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *RenderTemplateResponse) Reset() {
|
|
*x = RenderTemplateResponse{}
|
|
mi := &file_v1_render_proto_msgTypes[3]
|
|
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[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 RenderTemplateResponse.ProtoReflect.Descriptor instead.
|
|
func (*RenderTemplateResponse) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *RenderTemplateResponse) GetHtml() []byte {
|
|
if x != nil {
|
|
return x.Html
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// 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[4]
|
|
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[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 RenderContext.ProtoReflect.Descriptor instead.
|
|
func (*RenderContext) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
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[5]
|
|
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[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 RequestInfo.ProtoReflect.Descriptor instead.
|
|
func (*RequestInfo) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
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"
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *PageContext) Reset() {
|
|
*x = PageContext{}
|
|
mi := &file_v1_render_proto_msgTypes[6]
|
|
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[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 PageContext.ProtoReflect.Descriptor instead.
|
|
func (*PageContext) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
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 ""
|
|
}
|
|
|
|
// 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[7]
|
|
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[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 PostContext.ProtoReflect.Descriptor instead.
|
|
func (*PostContext) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
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[8]
|
|
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[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 AuthorContext.ProtoReflect.Descriptor instead.
|
|
func (*AuthorContext) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
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[9]
|
|
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[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 CategoryContext.ProtoReflect.Descriptor instead.
|
|
func (*CategoryContext) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
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[10]
|
|
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[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 MasterPageContext.ProtoReflect.Descriptor instead.
|
|
func (*MasterPageContext) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
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[11]
|
|
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[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 HumanProofBanner.ProtoReflect.Descriptor instead.
|
|
func (*HumanProofBanner) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
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[12]
|
|
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[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 DetailRow.ProtoReflect.Descriptor instead.
|
|
func (*DetailRow) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
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"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *BlockContext) Reset() {
|
|
*x = BlockContext{}
|
|
mi := &file_v1_render_proto_msgTypes[13]
|
|
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[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 BlockContext.ProtoReflect.Descriptor instead.
|
|
func (*BlockContext) Descriptor() ([]byte, []int) {
|
|
return file_v1_render_proto_rawDescGZIP(), []int{13}
|
|
}
|
|
|
|
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 ""
|
|
}
|
|
|
|
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\")\n" +
|
|
"\x13RenderBlockResponse\x12\x12\n" +
|
|
"\x04html\x18\x01 \x01(\tR\x04html\"\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\",\n" +
|
|
"\x16RenderTemplateResponse\x12\x12\n" +
|
|
"\x04html\x18\x01 \x01(\fR\x04html\"\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\"|\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\"\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\"\x85\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\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\x01B0Z.git.dev.alexdunmow.com/block/core/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, 20)
|
|
var file_v1_render_proto_goTypes = []any{
|
|
(*RenderBlockRequest)(nil), // 0: abi.v1.RenderBlockRequest
|
|
(*RenderBlockResponse)(nil), // 1: abi.v1.RenderBlockResponse
|
|
(*RenderTemplateRequest)(nil), // 2: abi.v1.RenderTemplateRequest
|
|
(*RenderTemplateResponse)(nil), // 3: abi.v1.RenderTemplateResponse
|
|
(*RenderContext)(nil), // 4: abi.v1.RenderContext
|
|
(*RequestInfo)(nil), // 5: abi.v1.RequestInfo
|
|
(*PageContext)(nil), // 6: abi.v1.PageContext
|
|
(*PostContext)(nil), // 7: abi.v1.PostContext
|
|
(*AuthorContext)(nil), // 8: abi.v1.AuthorContext
|
|
(*CategoryContext)(nil), // 9: abi.v1.CategoryContext
|
|
(*MasterPageContext)(nil), // 10: abi.v1.MasterPageContext
|
|
(*HumanProofBanner)(nil), // 11: abi.v1.HumanProofBanner
|
|
(*DetailRow)(nil), // 12: abi.v1.DetailRow
|
|
(*BlockContext)(nil), // 13: abi.v1.BlockContext
|
|
nil, // 14: abi.v1.RenderContext.InjectedSlotsEntry
|
|
nil, // 15: abi.v1.RequestInfo.HeadersEntry
|
|
nil, // 16: abi.v1.RequestInfo.CookiesEntry
|
|
nil, // 17: abi.v1.BlockContext.QueryEntry
|
|
nil, // 18: abi.v1.BlockContext.CookiesEntry
|
|
nil, // 19: abi.v1.BlockContext.HeadersEntry
|
|
(*timestamppb.Timestamp)(nil), // 20: google.protobuf.Timestamp
|
|
}
|
|
var file_v1_render_proto_depIdxs = []int32{
|
|
4, // 0: abi.v1.RenderBlockRequest.render_context:type_name -> abi.v1.RenderContext
|
|
4, // 1: abi.v1.RenderTemplateRequest.render_context:type_name -> abi.v1.RenderContext
|
|
5, // 2: abi.v1.RenderContext.request:type_name -> abi.v1.RequestInfo
|
|
13, // 3: abi.v1.RenderContext.block_context:type_name -> abi.v1.BlockContext
|
|
6, // 4: abi.v1.RenderContext.page:type_name -> abi.v1.PageContext
|
|
7, // 5: abi.v1.RenderContext.post:type_name -> abi.v1.PostContext
|
|
8, // 6: abi.v1.RenderContext.author:type_name -> abi.v1.AuthorContext
|
|
9, // 7: abi.v1.RenderContext.category:type_name -> abi.v1.CategoryContext
|
|
10, // 8: abi.v1.RenderContext.master_page:type_name -> abi.v1.MasterPageContext
|
|
14, // 9: abi.v1.RenderContext.injected_slots:type_name -> abi.v1.RenderContext.InjectedSlotsEntry
|
|
11, // 10: abi.v1.RenderContext.human_proof_banner:type_name -> abi.v1.HumanProofBanner
|
|
12, // 11: abi.v1.RenderContext.detail_row:type_name -> abi.v1.DetailRow
|
|
15, // 12: abi.v1.RequestInfo.headers:type_name -> abi.v1.RequestInfo.HeadersEntry
|
|
16, // 13: abi.v1.RequestInfo.cookies:type_name -> abi.v1.RequestInfo.CookiesEntry
|
|
20, // 14: abi.v1.PostContext.published_at:type_name -> google.protobuf.Timestamp
|
|
20, // 15: abi.v1.BlockContext.now:type_name -> google.protobuf.Timestamp
|
|
17, // 16: abi.v1.BlockContext.query:type_name -> abi.v1.BlockContext.QueryEntry
|
|
18, // 17: abi.v1.BlockContext.cookies:type_name -> abi.v1.BlockContext.CookiesEntry
|
|
19, // 18: abi.v1.BlockContext.headers:type_name -> abi.v1.BlockContext.HeadersEntry
|
|
19, // [19:19] is the sub-list for method output_type
|
|
19, // [19:19] is the sub-list for method input_type
|
|
19, // [19:19] is the sub-list for extension type_name
|
|
19, // [19:19] is the sub-list for extension extendee
|
|
0, // [0:19] 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: 20,
|
|
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
|
|
}
|