reaching/app/messaging

Types

pub type Attachment {
  Attachment(
    file_name: String,
    mime_type: String,
    description: String,
    bytes: BitArray,
  )
}

Constructors

  • Attachment(
      file_name: String,
      mime_type: String,
      description: String,
      bytes: BitArray,
    )
pub type HintedEnvelopeId {
  HintedEnvelopeId(
    envelope_id: BitArray,
    remove_envelope_id_hint: BitArray,
  )
}

Constructors

  • HintedEnvelopeId(
      envelope_id: BitArray,
      remove_envelope_id_hint: BitArray,
    )
pub type Message {
  Message(
    language: String,
    content: Option(String),
    order: Order,
    attachments: List(Attachment),
  )
}

Constructors

  • Message(
      language: String,
      content: Option(String),
      order: Order,
      attachments: List(Attachment),
    )
pub type Model {
  Model(
    state: State,
    hinted_envelope_ids: Set(HintedEnvelopeId),
    message_vault_ids: Set(BitArray),
    messages: List(Message),
  )
}

Constructors

  • Model(
      state: State,
      hinted_envelope_ids: Set(HintedEnvelopeId),
      message_vault_ids: Set(BitArray),
      messages: List(Message),
    )
pub type Order {
  Timestamp(Timestamp)
  Relative(Int)
}

Constructors

  • Timestamp(Timestamp)
  • Relative(Int)
pub type State {
  Pending
  GettingEnvelope
  GettingMessageVault
}

Constructors

  • Pending
  • GettingEnvelope
  • GettingMessageVault

Values

pub fn decode(
  message: Dynamic,
) -> Result(Message, List(DecodeError))
pub fn hinted_envelope_id_decoder() -> Decoder(HintedEnvelopeId)
pub fn init() -> Model
pub fn new_hinted_envelope_ids(
  model: Model,
  hinted_envelope_ids: List(HintedEnvelopeId),
) -> Model
Search Document