add vendoring
This commit is contained in:
83
vendor/maunium.net/go/mautrix/id/opaque.go
generated
vendored
Normal file
83
vendor/maunium.net/go/mautrix/id/opaque.go
generated
vendored
Normal file
@@ -0,0 +1,83 @@
|
||||
// Copyright (c) 2020 Tulir Asokan
|
||||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla Public
|
||||
// License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
package id
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
|
||||
// A RoomID is a string starting with ! that references a specific room.
|
||||
// https://matrix.org/docs/spec/appendices#room-ids-and-event-ids
|
||||
type RoomID string
|
||||
|
||||
// A RoomAlias is a string starting with # that can be resolved into.
|
||||
// https://matrix.org/docs/spec/appendices#room-aliases
|
||||
type RoomAlias string
|
||||
|
||||
func NewRoomAlias(localpart, server string) RoomAlias {
|
||||
return RoomAlias(fmt.Sprintf("#%s:%s", localpart, server))
|
||||
}
|
||||
|
||||
// An EventID is a string starting with $ that references a specific event.
|
||||
//
|
||||
// https://matrix.org/docs/spec/appendices#room-ids-and-event-ids
|
||||
// https://matrix.org/docs/spec/rooms/v4#event-ids
|
||||
type EventID string
|
||||
|
||||
// A BatchID is a string identifying a batch of events being backfilled to a room.
|
||||
// https://github.com/matrix-org/matrix-doc/pull/2716
|
||||
type BatchID string
|
||||
|
||||
func (roomID RoomID) String() string {
|
||||
return string(roomID)
|
||||
}
|
||||
|
||||
func (roomID RoomID) URI(via ...string) *MatrixURI {
|
||||
return &MatrixURI{
|
||||
Sigil1: '!',
|
||||
MXID1: string(roomID)[1:],
|
||||
Via: via,
|
||||
}
|
||||
}
|
||||
|
||||
func (roomID RoomID) EventURI(eventID EventID, via ...string) *MatrixURI {
|
||||
return &MatrixURI{
|
||||
Sigil1: '!',
|
||||
MXID1: string(roomID)[1:],
|
||||
Sigil2: '$',
|
||||
MXID2: string(eventID)[1:],
|
||||
Via: via,
|
||||
}
|
||||
}
|
||||
|
||||
func (roomAlias RoomAlias) String() string {
|
||||
return string(roomAlias)
|
||||
}
|
||||
|
||||
func (roomAlias RoomAlias) URI() *MatrixURI {
|
||||
return &MatrixURI{
|
||||
Sigil1: '#',
|
||||
MXID1: string(roomAlias)[1:],
|
||||
}
|
||||
}
|
||||
|
||||
func (roomAlias RoomAlias) EventURI(eventID EventID) *MatrixURI {
|
||||
return &MatrixURI{
|
||||
Sigil1: '#',
|
||||
MXID1: string(roomAlias)[1:],
|
||||
Sigil2: '$',
|
||||
MXID2: string(eventID)[1:],
|
||||
}
|
||||
}
|
||||
|
||||
func (eventID EventID) String() string {
|
||||
return string(eventID)
|
||||
}
|
||||
|
||||
func (batchID BatchID) String() string {
|
||||
return string(batchID)
|
||||
}
|
||||
Reference in New Issue
Block a user