You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.0 KiB
52 lines
2.0 KiB
<?php |
|
|
|
namespace App\Enum; |
|
|
|
enum KindsEnum: int |
|
{ |
|
case METADATA = 0; // metadata, NIP-01 |
|
case DELETION_REQUEST = 5; // NIP-09 |
|
case TEXT_NOTE = 1; // text note, NIP-01 |
|
case REACTION = 7; // NIP-25, NIP-30 emoji in content |
|
case FOLLOWS = 3; |
|
case REPOST = 6; // Only wraps kind 1, NIP-18, will not implement |
|
case GENERIC_REPOST = 16; // Generic repost, original kind signalled in a "k" tag, NIP-18 |
|
case FILE_METADATA = 1063; // NIP-94 |
|
case COMMENTS = 1111; |
|
case HTTP_AUTH = 27235; // NIP-98, HTTP Auth |
|
case CURATION_SET = 30004; // NIP-51 |
|
case LONGFORM = 30023; // NIP-23 |
|
case LONGFORM_DRAFT = 30024; // NIP-23 |
|
case WIKI = 30817; // NIP-54 wiki pages |
|
case PUBLICATION_INDEX = 30040; |
|
|
|
/** |
|
* All kinds stored as long-form articles in the `article` table: 30023, 30024, 30817. |
|
* |
|
* @return list<self> |
|
*/ |
|
public static function longformKinds(): array |
|
{ |
|
return [self::LONGFORM, self::LONGFORM_DRAFT, self::WIKI]; |
|
} |
|
|
|
/** |
|
* @return list<int> |
|
*/ |
|
public static function longformKindValues(): array |
|
{ |
|
return [self::LONGFORM->value, self::LONGFORM_DRAFT->value, self::WIKI->value]; |
|
} |
|
case ZAP_REQUEST = 9734; // NIP-57, Zap request |
|
case ZAP = 9735; // NIP-57, Zap receipt (Lightning) |
|
case MONERO_ZAP_RECEIPT = 9736; // Monero zap receipt (Garnet/Nosmero, analogous to 9735) |
|
case PAYMENT_NOTIFICATION = 9740; // NIP-A3, payment notification (superchat sender) |
|
case PAYMENT_ATTESTATION = 9741; // NIP-A3, payment attestation (superchat recipient confirms) |
|
case MONERO_TIP = 1814; // Garnet Monero tip (self-attesting, proof embedded in content JSON) |
|
case HIGHLIGHTS = 9802; |
|
case RELAY_LIST = 10002; // NIP-65, Relay list metadata |
|
case EMOJI_LIST = 10030; // NIP-51 standard list, NIP-30 emoji tags |
|
case PAYMENT_TARGETS = 10133; // NIP-A3, payto: payment targets (replaceable) |
|
case APP_DATA = 30078; // NIP-78, Arbitrary custom app data |
|
case USER_STATUS = 30315; // NIP-38, NIP-30 emoji in content |
|
}
|
|
|