kind

package
v1.0.30 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 31, 2024 License: Unlicense Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ProfileMetadata is an event type that stores user profile data, pet
	// names, bio, lightning address, etc.
	ProfileMetadata = &T{0}
	// SetMetadata is a synonym for ProfileMetadata.
	SetMetadata = &T{0}
	// TextNote is a standard short text note of plain text a la twitter
	TextNote = &T{1}
	// RecommendServer is an event type that...
	RecommendServer = &T{2}
	RecommendRelay  = &T{2}
	// FollowList an event containing a list of pubkeys of users that should be
	// shown as follows in a timeline.
	FollowList = &T{3}
	Follows    = &T{3}
	// EncryptedDirectMessage is an event type that...
	EncryptedDirectMessage = &T{4}
	// Deletion is an event type that...
	Deletion      = &T{5}
	EventDeletion = &T{5}
	// Repost is an event type that...
	Repost = &T{6}
	// Reaction is an event type that...
	Reaction = &T{7}
	// BadgeAward is an event type
	BadgeAward = &T{8}
	// Seal is an event that wraps a PrivateDirectMessage and is placed inside a
	// GiftWrap or GiftWrapWithKind4
	Seal = &T{13}
	// PrivateDirectMessage is a nip-17 direct message with a different
	// construction. It doesn't actually appear as an event a relay might receive
	// but only as the stringified content of a GiftWrap or GiftWrapWithKind4 inside
	// a
	PrivateDirectMessage = &T{14}
	// ReadReceipt is a type of event that marks a list of tagged events (e
	// tags) as being seen by the client, its distinctive feature is the
	// "expiration" tag which indicates a time after which the marking expires
	ReadReceipt = &T{15}
	// GenericRepost is an event type that...
	GenericRepost = &T{16}
	// ChannelCreation is an event type that...
	ChannelCreation = &T{40}
	// ChannelMetadata is an event type that...
	ChannelMetadata = &T{41}
	// ChannelMessage is an event type that...
	ChannelMessage = &T{42}
	// ChannelHideMessage is an event type that...
	ChannelHideMessage = &T{43}
	// ChannelMuteUser is an event type that...
	ChannelMuteUser = &T{44}
	// Bid is an event type that...
	Bid = &T{1021}
	// BidConfirmation is an event type that...
	BidConfirmation = &T{1022}
	// OpenTimestamps is an event type that...
	OpenTimestamps    = &T{1040}
	GiftWrap          = &T{1059}
	GiftWrapWithKind4 = &T{1060}
	// FileMetadata is an event type that...
	FileMetadata = &T{1063}
	// LiveChatMessage is an event type that...
	LiveChatMessage = &T{1311}
	// BitcoinBlock is an event type created for the Nostrocket
	BitcoinBlock = &T{1517}
	// LiveStream from zap.stream
	LiveStream = &T{1808}
	// ProblemTracker is an event type used by Nostrocket
	ProblemTracker = &T{1971}
	// MemoryHole is an event type contains a report about an event (usually
	// text note or other human readable)
	MemoryHole = &T{1984}
	Reporting  = &T{1984}
	// Label is an event type has L and l tags, namespace and type - NIP-32
	Label = &T{1985}
	// CommunityPostApproval is an event type that...
	CommunityPostApproval = &T{4550}
	JobRequestStart       = &T{5000}
	JobRequestEnd         = &T{5999}
	JobResultStart        = &T{6000}
	JobResultEnd          = &T{6999}
	JobFeedback           = &T{7000}
	ZapGoal               = &T{9041}
	// ZapRequest is an event type that...
	ZapRequest = &T{9734}
	// Zap is an event type that...
	Zap        = &T{9735}
	Highlights = &T{9882}
	// ReplaceableStart is an event type that...
	ReplaceableStart = &T{10000}
	// MuteList is an event type that...
	MuteList  = &T{10000}
	BlockList = &T{10000}
	// PinList is an event type that...
	PinList = &T{10001}
	// RelayListMetadata is an event type that...
	RelayListMetadata     = &T{10002}
	BookmarkList          = &T{10003}
	CommunitiesList       = &T{10004}
	PublicChatsList       = &T{10005}
	BlockedRelaysList     = &T{10006}
	SearchRelaysList      = &T{10007}
	InterestsList         = &T{10015}
	UserEmojiList         = &T{10030}
	FileStorageServerList = &T{10096}
	// NWCWalletInfo is an event type that...
	NWCWalletInfo = &T{13194}
	// ReplaceableEnd is an event type that...
	ReplaceableEnd = &T{20000}
	// EphemeralStart is an event type that...
	EphemeralStart  = &T{20000}
	LightningPubRPC = &T{21000}
	// ClientAuthentication is an event type that...
	ClientAuthentication = &T{22242}
	// NWCWalletRequest is an event type that...
	NWCWalletRequest = &T{23194}
	WalletRequest    = &T{23194}
	// NWCWalletResponse is an event type that...
	NWCWalletResponse = &T{23195}
	WalletResponse    = &T{23195}
	// NostrConnect is an event type that...
	NostrConnect = &T{24133}
	HTTPAuth     = &T{27235}
	// EphemeralEnd is an event type that...
	EphemeralEnd = &T{30000}
	// ParameterizedReplaceableStart is an event type that...
	ParameterizedReplaceableStart = &T{30000}
	// CategorizedPeopleList is an event type that...
	CategorizedPeopleList = &T{30000}
	FollowSets            = &T{30000}
	// CategorizedBookmarksList is an event type that...
	CategorizedBookmarksList = &T{30001}
	GenericLists             = &T{30001}
	RelaySets                = &T{30002}
	BookmarkSets             = &T{30003}
	CurationSets             = &T{30004}
	// ProfileBadges is an event type that...
	ProfileBadges = &T{30008}
	// BadgeDefinition is an event type that...
	BadgeDefinition = &T{30009}
	InterestSets    = &T{30015}
	// StallDefinition creates or updates a stall
	StallDefinition = &T{30017}
	// ProductDefinition creates or updates a product
	ProductDefinition    = &T{30018}
	MarketplaceUIUX      = &T{30019}
	ProductSoldAsAuction = &T{30020}
	// Article is an event type that...
	Article              = &T{30023}
	LongFormContent      = &T{30023}
	DraftLongFormContent = &T{30024}
	EmojiSets            = &T{30030}
	// ApplicationSpecificData is an event type stores data about application
	// configuration, this, like DMs and giftwraps must be protected by user
	// auth.
	ApplicationSpecificData = &T{30078}
	LiveEvent               = &T{30311}
	UserStatuses            = &T{30315}
	ClassifiedListing       = &T{30402}
	DraftClassifiedListing  = &T{30403}
	DateBasedCalendarEvent  = &T{31922}
	TimeBasedCalendarEvent  = &T{31923}
	Calendar                = &T{31924}
	CalendarEventRSVP       = &T{31925}
	HandlerRecommendation   = &T{31989}
	HandlerInformation      = &T{31990}
	// WaveLakeTrack which has no spec and uses malformed tags
	WaveLakeTrack       = &T{32123}
	CommunityDefinition = &T{34550}
	ACLEvent            = &T{39998}
	// ParameterizedReplaceableEnd is an event type that...
	ParameterizedReplaceableEnd = &T{40000}
)
View Source
var Map = map[uint16]string{
	ProfileMetadata.K:             "ProfileMetadata",
	TextNote.K:                    "TextNote",
	RecommendRelay.K:              "RecommendRelay",
	FollowList.K:                  "FollowList",
	EncryptedDirectMessage.K:      "EncryptedDirectMessage",
	EventDeletion.K:               "EventDeletion",
	Repost.K:                      "Repost",
	Reaction.K:                    "Reaction",
	BadgeAward.K:                  "BadgeAward",
	ReadReceipt.K:                 "ReadReceipt",
	GenericRepost.K:               "GenericRepost",
	ChannelCreation.K:             "ChannelCreation",
	ChannelMetadata.K:             "ChannelMetadata",
	ChannelMessage.K:              "ChannelMessage",
	ChannelHideMessage.K:          "ChannelHideMessage",
	ChannelMuteUser.K:             "ChannelMuteUser",
	Bid.K:                         "Bid",
	BidConfirmation.K:             "BidConfirmation",
	OpenTimestamps.K:              "OpenTimestamps",
	FileMetadata.K:                "FileMetadata",
	LiveChatMessage.K:             "LiveChatMessage",
	ProblemTracker.K:              "ProblemTracker",
	Reporting.K:                   "Reporting",
	Label.K:                       "Label",
	CommunityPostApproval.K:       "CommunityPostApproval",
	JobRequestStart.K:             "JobRequestStart",
	JobRequestEnd.K:               "JobRequestEnd",
	JobResultStart.K:              "JobResultStart",
	JobResultEnd.K:                "JobResultEnd",
	JobFeedback.K:                 "JobFeedback",
	ZapGoal.K:                     "ZapGoal",
	ZapRequest.K:                  "ZapRequest",
	Zap.K:                         "Zap",
	Highlights.K:                  "Highlights",
	BlockList.K:                   "BlockList",
	PinList.K:                     "PinList",
	RelayListMetadata.K:           "RelayListMetadata",
	BookmarkList.K:                "BookmarkList",
	CommunitiesList.K:             "CommunitiesList",
	PublicChatsList.K:             "PublicChatsList",
	BlockedRelaysList.K:           "BlockedRelaysList",
	SearchRelaysList.K:            "SearchRelaysList",
	InterestsList.K:               "InterestsList",
	UserEmojiList.K:               "UserEmojiList",
	FileStorageServerList.K:       "FileStorageServerList",
	NWCWalletInfo.K:               "NWCWalletInfo",
	LightningPubRPC.K:             "LightningPubRPC",
	ClientAuthentication.K:        "ClientAuthentication",
	WalletRequest.K:               "WalletRequest",
	WalletResponse.K:              "WalletResponse",
	NostrConnect.K:                "NostrConnect",
	HTTPAuth.K:                    "HTTPAuth",
	FollowSets.K:                  "FollowSets",
	GenericLists.K:                "GenericLists",
	RelaySets.K:                   "RelaySets",
	BookmarkSets.K:                "BookmarkSets",
	CurationSets.K:                "CurationSets",
	ProfileBadges.K:               "ProfileBadges",
	BadgeDefinition.K:             "BadgeDefinition",
	InterestSets.K:                "InterestSets",
	StallDefinition.K:             "StallDefinition",
	ProductDefinition.K:           "ProductDefinition",
	MarketplaceUIUX.K:             "MarketplaceUIUX",
	ProductSoldAsAuction.K:        "ProductSoldAsAuction",
	LongFormContent.K:             "LongFormContent",
	DraftLongFormContent.K:        "DraftLongFormContent",
	EmojiSets.K:                   "EmojiSets",
	ApplicationSpecificData.K:     "ApplicationSpecificData",
	ParameterizedReplaceableEnd.K: "ParameterizedReplaceableEnd",
	LiveEvent.K:                   "LiveEvent",
	UserStatuses.K:                "UserStatuses",
	ClassifiedListing.K:           "ClassifiedListing",
	DraftClassifiedListing.K:      "DraftClassifiedListing",
	DateBasedCalendarEvent.K:      "DateBasedCalendarEvent",
	TimeBasedCalendarEvent.K:      "TimeBasedCalendarEvent",
	Calendar.K:                    "Calendar",
	CalendarEventRSVP.K:           "CalendarEventRSVP",
	HandlerRecommendation.K:       "HandlerRecommendation",
	HandlerInformation.K:          "HandlerInformation",
	CommunityDefinition.K:         "CommunityDefinition",
}
View Source
var MapMx sync.Mutex

Functions

func GetString

func GetString(t *T) string

GetString returns a human readable identifier for a kind.T.

func IsPrivileged

func IsPrivileged(k ...*T) (is bool)

Types

type B

type B = []byte

type Ctx

type Ctx = context.T

type E

type E = error

type N

type N = int

type S

type S = string

type T

type T struct {
	K uint16
}

T - which will be externally referenced as kind.T is the event type in the nostr protocol, the use of the capital T signifying type, consistent with Go idiom, the Go standard library, and much, conformant, existing code.

func New

func New[V uint16 | uint32 | int](k V) (ki *T)

func (*T) Equal

func (k *T) Equal(k2 *T) bool

func (*T) IsEphemeral

func (k *T) IsEphemeral() bool

IsEphemeral returns true if the event kind is an ephemeral event. (not to be stored)

func (*T) IsParameterizedReplaceable

func (k *T) IsParameterizedReplaceable() bool

IsParameterizedReplaceable is a kind of event that is one of a group of events that replaces based on matching criteria.

func (*T) IsPrivileged

func (k *T) IsPrivileged() (is bool)

func (*T) IsReplaceable

func (k *T) IsReplaceable() bool

IsReplaceable returns true if the event kind is a replaceable kind - that is, if the newest version is the one that is in force (eg follow lists, relay lists, etc.

func (*T) MarshalJSON

func (k *T) MarshalJSON(dst B) (b B, err E)

func (*T) Name

func (k *T) Name() string

func (*T) ToInt

func (k *T) ToInt() int

func (*T) ToU16

func (k *T) ToU16() uint16

func (*T) ToU64

func (k *T) ToU64() uint64

func (*T) UnmarshalJSON

func (k *T) UnmarshalJSON(b B) (r B, err E)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL