kinds.go raw

   1  package nostr
   2  
   3  const (
   4  	KindProfileMetadata          int = 0
   5  	KindTextNote                 int = 1
   6  	KindRecommendServer          int = 2
   7  	KindFollowList               int = 3
   8  	KindEncryptedDirectMessage   int = 4
   9  	KindDeletion                 int = 5
  10  	KindRepost                   int = 6
  11  	KindReaction                 int = 7
  12  	KindBadgeAward               int = 8
  13  	KindSimpleGroupChatMessage   int = 9
  14  	KindSimpleGroupThreadedReply int = 10
  15  	KindSimpleGroupThread        int = 11
  16  	KindSimpleGroupReply         int = 12
  17  	KindSeal                     int = 13
  18  	KindDirectMessage            int = 14
  19  	KindGenericRepost            int = 16
  20  	KindReactionToWebsite        int = 17
  21  	KindChannelCreation          int = 40
  22  	KindChannelMetadata          int = 41
  23  	KindChannelMessage           int = 42
  24  	KindChannelHideMessage       int = 43
  25  	KindChannelMuteUser          int = 44
  26  	KindChess                    int = 64
  27  	KindMergeRequests            int = 818
  28  	KindComment                  int = 1111
  29  	KindBid                      int = 1021
  30  	KindBidConfirmation          int = 1022
  31  	KindOpenTimestamps           int = 1040
  32  	KindGiftWrap                 int = 1059
  33  	KindFileMetadata             int = 1063
  34  	KindLiveChatMessage          int = 1311
  35  	KindPatch                    int = 1617
  36  	KindIssue                    int = 1621
  37  	KindReply                    int = 1622
  38  	KindStatusOpen               int = 1630
  39  	KindStatusApplied            int = 1631
  40  	KindStatusClosed             int = 1632
  41  	KindStatusDraft              int = 1633
  42  	KindProblemTracker           int = 1971
  43  	KindReporting                int = 1984
  44  	KindLabel                    int = 1985
  45  	KindRelayReviews             int = 1986
  46  	KindAIEmbeddings             int = 1987
  47  	KindTorrent                  int = 2003
  48  	KindTorrentComment           int = 2004
  49  	KindCoinjoinPool             int = 2022
  50  	KindCommunityPostApproval    int = 4550
  51  	KindJobFeedback              int = 7000
  52  	KindSimpleGroupPutUser       int = 9000
  53  	KindSimpleGroupRemoveUser    int = 9001
  54  	KindSimpleGroupEditMetadata  int = 9002
  55  	KindSimpleGroupDeleteEvent   int = 9005
  56  	KindSimpleGroupCreateGroup   int = 9007
  57  	KindSimpleGroupDeleteGroup   int = 9008
  58  	KindSimpleGroupCreateInvite  int = 9009
  59  	KindSimpleGroupJoinRequest   int = 9021
  60  	KindSimpleGroupLeaveRequest  int = 9022
  61  	KindZapGoal                  int = 9041
  62  	KindNutZap                   int = 9321
  63  	KindTidalLogin               int = 9467
  64  	KindZapRequest               int = 9734
  65  	KindZap                      int = 9735
  66  	KindHighlights               int = 9802
  67  	KindMuteList                 int = 10000
  68  	KindPinList                  int = 10001
  69  	KindRelayListMetadata        int = 10002
  70  	KindBookmarkList             int = 10003
  71  	KindCommunityList            int = 10004
  72  	KindPublicChatList           int = 10005
  73  	KindBlockedRelayList         int = 10006
  74  	KindSearchRelayList          int = 10007
  75  	KindSimpleGroupList          int = 10009
  76  	KindInterestList             int = 10015
  77  	KindNutZapInfo               int = 10019
  78  	KindEmojiList                int = 10030
  79  	KindDMRelayList              int = 10050
  80  	KindUserServerList           int = 10063
  81  	KindFileStorageServerList    int = 10096
  82  	KindGoodWikiAuthorList       int = 10101
  83  	KindGoodWikiRelayList        int = 10102
  84  	KindNWCWalletInfo            int = 13194
  85  	KindLightningPubRPC          int = 21000
  86  	KindClientAuthentication     int = 22242
  87  	KindNWCWalletRequest         int = 23194
  88  	KindNWCWalletResponse        int = 23195
  89  	KindNostrConnect             int = 24133
  90  	KindBlobs                    int = 24242
  91  	KindHTTPAuth                 int = 27235
  92  	KindCategorizedPeopleList    int = 30000
  93  	KindCategorizedBookmarksList int = 30001
  94  	KindRelaySets                int = 30002
  95  	KindBookmarkSets             int = 30003
  96  	KindCuratedSets              int = 30004
  97  	KindCuratedVideoSets         int = 30005
  98  	KindMuteSets                 int = 30007
  99  	KindProfileBadges            int = 30008
 100  	KindBadgeDefinition          int = 30009
 101  	KindInterestSets             int = 30015
 102  	KindStallDefinition          int = 30017
 103  	KindProductDefinition        int = 30018
 104  	KindMarketplaceUI            int = 30019
 105  	KindProductSoldAsAuction     int = 30020
 106  	KindArticle                  int = 30023
 107  	KindDraftArticle             int = 30024
 108  	KindEmojiSets                int = 30030
 109  	KindModularArticleHeader     int = 30040
 110  	KindModularArticleContent    int = 30041
 111  	KindReleaseArtifactSets      int = 30063
 112  	KindApplicationSpecificData  int = 30078
 113  	KindLiveEvent                int = 30311
 114  	KindUserStatuses             int = 30315
 115  	KindClassifiedListing        int = 30402
 116  	KindDraftClassifiedListing   int = 30403
 117  	KindRepositoryAnnouncement   int = 30617
 118  	KindRepositoryState          int = 30618
 119  	KindSimpleGroupMetadata      int = 39000
 120  	KindSimpleGroupAdmins        int = 39001
 121  	KindSimpleGroupMembers       int = 39002
 122  	KindSimpleGroupRoles         int = 39003
 123  	KindWikiArticle              int = 30818
 124  	KindRedirects                int = 30819
 125  	KindFeed                     int = 31890
 126  	KindDateCalendarEvent        int = 31922
 127  	KindTimeCalendarEvent        int = 31923
 128  	KindCalendar                 int = 31924
 129  	KindCalendarEventRSVP        int = 31925
 130  	KindHandlerRecommendation    int = 31989
 131  	KindHandlerInformation       int = 31990
 132  	KindVideoEvent               int = 34235
 133  	KindShortVideoEvent          int = 34236
 134  	KindVideoViewEvent           int = 34237
 135  	KindCommunityDefinition      int = 34550
 136  )
 137  
 138  func IsRegularKind(kind int) bool {
 139  	return kind < 10000 && kind != 0 && kind != 3
 140  }
 141  
 142  func IsReplaceableKind(kind int) bool {
 143  	return kind == 0 || kind == 3 || (10000 <= kind && kind < 20000)
 144  }
 145  
 146  func IsEphemeralKind(kind int) bool {
 147  	return 20000 <= kind && kind < 30000
 148  }
 149  
 150  func IsAddressableKind(kind int) bool {
 151  	return 30000 <= kind && kind < 40000
 152  }
 153