Skip to main content

Class: Room

Defined in: models/room.ts:14

The room class is used to creating, updating, and saving room records in cosmos.

Extends

Constructors

Constructor

new Room(props): Room

Defined in: models/room.ts:18

Parameters

props

RoomProps

Returns

Room

Overrides

Model.constructor

Properties

attributes

attributes: RoomProps = {}

Defined in: models/model.ts:34

Inherited from

Model.attributes


name?

optional name: string

Defined in: models/room.ts:16


uuid

uuid: string

Defined in: models/model.ts:35

Inherited from

Model.uuid


id

static id: string = 'room'

Defined in: models/room.ts:15

Overrides

Model.id

Accessors

id

Get Signature

get id(): string

Defined in: models/model.ts:249

Gets the ID

Returns

string

The ID property. Options include: "room" | "user" | "userRoom" | "invite" | "otp"

Inherited from

Model.id


isNew

Get Signature

get isNew(): boolean

Defined in: models/model.ts:258

Checks if model is new

Returns

boolean

Returns boolean if uuid is missing from record

Inherited from

Model.isNew

Methods

createInviteData()

createInviteData(user): object

Defined in: models/room.ts:28

Creates the data needed for a room invitation.

Parameters

user

User

The user that is creating the room invitation for someone

Returns

object

An object that contains information about the room, when someone was invited to the room, and who invited the person.

invitedBy

invitedBy: object

invitedBy.name

name: any

invitedBy.uid

uid: any

invitedBy.uuid

uuid: string = user.uuid

invitedDate

invitedDate: number

name

name: any

room

room: string

shortname

shortname: any


delete()

delete(): Promise<boolean>

Defined in: models/model.ts:78

Deletes a record

Returns

Promise<boolean>

a boolean: true if the record was deleted, false if it was not deleted

Inherited from

Model.delete


filterMembersList()

filterMembersList(user): Promise<UserProps[]>

Defined in: models/room.ts:48

Filters a room's members list based on a user's credentials. Returns a room's members list.

Parameters

user

User

The user requesting the room's members list.

Returns

Promise<UserProps[]>

A list of users in the room. If a user is not approved for that room, but they are waiting in the room, then the member's list will include just the user. If the user is not approved and not waiting for approval, then an empty array will be returned because they do not have permission to see who is in the room.


get()

get(name): any

Defined in: models/model.ts:267

Gets an attribute's value

Parameters

name

Name of the attribute that is being retrieved

string | number

Returns

any

The attribute value being retrieved

Inherited from

Model.get


getMembersList()

getMembersList(): Promise<UserProps[]>

Defined in: models/room.ts:67

Gets a list of users in a room.

Returns

Promise<UserProps[]>

A list of users in a room.


save()

save(): Promise<boolean>

Defined in: models/model.ts:206

Save a record in DB

Returns

Promise<boolean>

true if the record was saved in the DB

Inherited from

Model.save


serialize()

serialize(): object

Defined in: models/room.ts:76

Serializes the room information/data for the end-user.

Returns

object

An object with only the room's uuid, name, and shortname.

name

name: string

shortname

shortname: string

uuid

uuid: string

Overrides

Model.serialize


set()

set(name, value): void

Defined in: models/model.ts:276

Sets an attribute value

Parameters

name

Key of the attribute's value being set

string | number

value

any

Value of the attribute being set

Returns

void

Inherited from

Model.set


update()

update(attrs): Promise<boolean>

Defined in: models/model.ts:231

Parameters

attrs

ModelProps

The attributes provided to update the record.

Returns

Promise<boolean>

a boolean: True if successfully updated | False if not updated

Inherited from

Model.update


create()

static create(attrs): Promise<any>

Defined in: models/model.ts:58

Creates a new model & save the record

Parameters

attrs

ModelProps

The attributes passing to the model.

Returns

Promise<any>

either the saved model or null, if the model could not be saved.

Inherited from

Model.create


find()

static find(uuid): Promise<any>

Defined in: models/model.ts:88

Finds a record

Parameters

uuid

string

The unique ID of the record being found

Returns

Promise<any>

a new instance of the found record

Inherited from

Model.find


findAll()

static findAll(): Promise<any[]>

Defined in: models/model.ts:134

Load all records by type

Returns

Promise<any[]>

A list of all records that match a particular model id

Inherited from

Model.findAll


findAllBy()

static findAllBy(params): Promise<any>

Defined in: models/model.ts:125

Alias for query

Parameters

params

QueryProps

The query properties used to filter & find a record

Returns

Promise<any>

A list of found records that match the params, may be an empty []

Inherited from

Model.findAllBy


findBy()

static findBy(params): Promise<any>

Defined in: models/model.ts:107

Finds a single record based on props (essentially limits query to a single result)

Parameters

params

QueryProps

The query properties used to filter & find a record

Returns

Promise<any>

null if no record found, or a new instance of the record

Inherited from

Model.findBy


findOrCreate()

static findOrCreate(attrs): Promise<any>

Defined in: models/model.ts:154

Finds a record by given UUID, if it doesn't exist, creates a new record instead

Parameters

attrs

ModelProps

The attributes provided to query the record. Only UUID will be used

Returns

Promise<any>

Either the existing record or newly created one

Inherited from

Model.findOrCreate


findOrCreateBy()

static findOrCreateBy(attrs): Promise<any>

Defined in: models/model.ts:171

Finds a record by a query, if it doesn't exist, creates a new record instead

Parameters

attrs

IKeyValue

The attributes provided to query the record.

Returns

Promise<any>

Either the existing record or newly created one

Inherited from

Model.findOrCreateBy


query()

static query(params): Promise<any[]>

Defined in: models/model.ts:190

Query for resources using an object of properties/filters

Parameters

params

IKeyValue

The attributes provided to query the record.

Returns

Promise<any[]>

An array of the found records (created as new instances of model)

Inherited from

Model.query