39 lines
1.0 KiB
Ruby
39 lines
1.0 KiB
Ruby
module Settings
|
|
module NostrSettings
|
|
extend ActiveSupport::Concern
|
|
|
|
included do
|
|
field :nostr_enabled, type: :boolean,
|
|
default: ENV["NOSTR_PRIVATE_KEY"].present?
|
|
|
|
field :nostr_private_key, type: :string,
|
|
default: ENV["NOSTR_PRIVATE_KEY"].presence
|
|
|
|
field :nostr_public_key, type: :string,
|
|
default: ENV["NOSTR_PUBLIC_KEY"].presence
|
|
|
|
field :nostr_public_key_primary_domain, type: :string,
|
|
default: ENV["NOSTR_PUBLIC_KEY_PRIMARY_DOMAIN"].presence
|
|
|
|
field :nostr_relay_url, type: :string,
|
|
default: ENV["NOSTR_RELAY_URL"].presence
|
|
|
|
field :nostr_zaps_relay_limit, type: :integer,
|
|
default: 12
|
|
|
|
field :nostr_discovery_relays, type: :array, default: %w[
|
|
wss://nostr.kosmos.org
|
|
wss://purplepag.es
|
|
wss://relay.nostr.band
|
|
wss://njump.me
|
|
wss://relay.damus.io
|
|
]
|
|
|
|
def self.nostr_relay_url_http
|
|
self.nostr_relay_url.gsub(/^ws:/, "http:")
|
|
.gsub(/^wss:/, "https:")
|
|
end
|
|
end
|
|
end
|
|
end
|