ROAR DocumentationROAR Documentation
  • Databases
  • Workflows
  • Application
  • GitHub Actions
  • Dashboard Components
  • Firebase App Check
  • Cloud Functions
  • Backend Architecture
  • Internationalization
  • Integrating New Apps
  • Optimizing Assets
  • ROAR Redivis Instance
  • Logging and Querying
  • Emulation
  • Data Guidelines
  • Data Organization
  • Data Requests
GitHub
  • Databases
  • Workflows
  • Application
  • GitHub Actions
  • Dashboard Components
  • Firebase App Check
  • Cloud Functions
  • Backend Architecture
  • Internationalization
  • Integrating New Apps
  • Optimizing Assets
  • ROAR Redivis Instance
  • Logging and Querying
  • Emulation
  • Data Guidelines
  • Data Organization
  • Data Requests
GitHub
  • Databases
    • Database Information
    • gse-roar-admin
    • gse-roar-assessment
  • BigQuery
    • Querying Assessment Data
    • BigQuery schema: classes
    • BigQuery schema: districts
    • BigQuery schema: families
    • BigQuery schema: groups
    • BigQuery schema: schools
    • BigQuery schema: user_runs
    • BigQuery schema: user_trials
    • BigQuery schema: users
  • Workflows
    • Workflows
    • Creating an Assignment
    • Authentication
    • Creating new Users
    • User Roster Changes
    • How to Impersonate a Clever User on Localhost
  • Application

    • Auth
  • GitHub Actions
    • ROAR Apps GitHub Actions
      • GitHub Actions in ROAR Apps
      • firebase-deploy-preview.yml
      • firebase-hosting-merge.yml
      • publish-to-npm-create-new-release.yml
      • submit-dashboard-pr.yml
    • ROAR Dashboard GitHub Actions
      • GitHub Actions in the ROAR Dashboard
  • Dashboard Components
    • Dashboard Components
    • Organization Score Reports
  • Firebase App Check
    • Firebase App Check Configuration for roar-firekit and roar-dashboard
  • Backend Architecture
    • Architecture
      • Backend Architecture in ROAR
      • Data Models
      • Database Implementations
      • Error Handling Architecture in ROAR
      • Repository Layer Architecture
      • Service Layer Architecture
    • API
      • Classes
        • Class: AdministrationServiceError
        • Class: FirebaseClientError
        • Class: FirebaseImplementationError
        • Class: FirestoreAdministrationRepository
        • Class: FirestoreAdministrationRepositoryError
        • Class: abstract FirestoreBaseRepository<T>
        • Class: FirestoreFilterAdapter
        • Class: FirestoreIdentityProviderRepository
        • Class: FirestoreIdentityProviderRepositoryError
        • Class: FirestoreOrgRepository
        • Class: FirestoreOrgRepositoryError
        • Class: FirestoreRepositoryError
        • Class: FirestoreUserClaimRepository
        • Class: FirestoreUserClaimRepositoryError
        • Class: FirestoreUserRepository
        • Class: FirestoreUserRepositoryError
        • Class: IdentityProviderServiceError
        • Classes
      • Enumerations
        • Enumeration: CollectionType
        • Enumeration: IdentityProviderType
        • Enumeration: Operator
        • Enumerations
      • Functions
        • Functions
        • Function: chunkOrgs()
        • Function: createAdministrationService()
        • Function: createFirestoreImplementation()
        • Function: createIdentityProviderService()
        • Function: isEmptyOrgs()
      • Interfaces
        • Interface: Administration
        • Interface: AdministrationBaseRepository
        • Interface: AdministrationService
        • Interface: AssentConsent
        • Interface: Assessment
        • Interface: BaseModel
        • Interface: BaseRepository<T>
        • Interface: Claims
        • Interface: CompositeCondition
        • Interface: CompositeFilter
        • Interface: CreateAdministrationServiceParams<AdminRepo, OrgRepo, UserClaimRepo>
        • Interface: CreateParams
        • Interface: DeleteParams
        • Interface: EducationalOrgsList
        • Interface: FieldCondition
        • Interface: FilterAdapter<T>
        • Interface: FirestoreCreateParams
        • Interface: FirestoreDeleteParams
        • Interface: FirestoreFetchDocumentParams
        • Interface: FirestoreGetAllParams
        • Interface: FirestoreGetByIdParams
        • Interface: FirestoreGetByNameParams
        • Interface: FirestoreGetByRoarUidParams
        • Interface: FirestoreGetParams
        • Interface: FirestoreGetWithFiltersParams
        • Interface: FirestoreImplementation
        • Interface: FirestoreRunTransactionParams<T>
        • Interface: FirestoreUpdateParams
        • Interface: FutureParams
        • Interface: GetAdministrationIdsForAdministratorParams
        • Interface: GetAdministrationIdsFromOrgsParams
        • Interface: GetAllParams
        • Interface: GetByNameParams
        • Interface: GetByProviderIdParams
        • Interface: GetByRoarUidParams
        • Interface: GetParams
        • Interface: GetRoarUidParams
        • Interface: IdentityProvider
        • Interface: IdentityProviderBaseRepository
        • Interface: IdentityProviderService
        • Interface: Legal
        • Interface: OrgBase
        • Interface: OrgBaseRepository
        • Interface: OrgsList
        • Interfaces
        • Interface: Result<T>
        • Interface: RunTransactionParams<T>
        • Interface: SingleFilter
        • Interface: UpdateParams
        • Interface: User
        • Interface: UserBaseRepository
        • Interface: UserClaim
        • Interface: UserClaimBaseRepository
        • Interface: createIdentityProviderServiceParams<IDPRepo, UserClaimRepo, UserRepo>
        • Interface: getAdministrationIdsFromOrgsParams
        • Interface: _setAdministrationIdsParams
      • Type Aliases
        • Type Alias: BaseFilter
        • Type Alias: ComparisonOperator
        • Type Alias: Condition
        • Type Alias: DocumentCreatedEvent
        • Type Alias: DocumentDeletedEvent
        • Type Alias: DocumentUpdatedEvent
        • Type Alias: DocumentWrittenEvent
        • Type Alias: ParameterValue
        • Type Aliases
        • Type Alias: SelectAllCondition
      • Variables
        • Variable: FirebaseAppClient
        • Variable: FirebaseAuthClient
        • Variable: FirestoreClient
        • Variable: ORG_NAMES
        • Variables API Documentation
    • Examples
      • Examples
    • Guides
      • Guides
  • Cloud Functions
    • gse-roar-admin
      • Admin Database
      • appendToAdminClaims()
      • associateassessmentuid()
      • createAdministratorAccount()
      • createGuestDocsForGoogleUsers()
      • createLevanteGroup()
      • createLevanteUsers()
      • createnewfamily()
      • createstudentaccount()
      • mirrorClasses()
      • mirrorCustomClaims
      • mirrorDistricts()
      • mirrorFamilies()
      • mirrorGroups()
      • mirrorSchools()
      • removefromadminclaims()
      • saveSurveyResponses()
      • setuidcustomclaims()
      • softDeleteUserAssignment()
      • softDeleteUserExternalData
      • softDeleteUser()
      • syncAssignmentCreated()
      • syncAssignmentDeleted()
      • syncAssignmentUpdated()
      • syncAssignmentsOnAdministrationUpdate()
      • syncAssignmentsOnUserUpdate()
      • syncCleverOrgs()
      • syncCleverUser()
    • gse-roar-assessment
      • Assessment Database
      • organizeBucketLogsByDate()
      • setuidclaims()
      • softDeleteGuestTrial()
      • softDeleteGuest()
      • softDeleteUserRun()
      • softDeleteUserTrial()
      • syncOnRunDocUpdate()
  • Internationalization
    • ROAM Fluency
    • ROAR Letter
    • ROAR Phoneme
    • Internationalization of ROAR Apps
    • ROAR Sentence
    • ROAR Word
  • Integrating New Apps
    • Integrating Roar Apps into the Dashboard
    • Dashboard Integration
    • Monitoring and Testing
    • Preparing the App for Packaging and Deployment
    • Packaging and Publishing to npm
    • Secrets in the GitHub Repository
  • Assets Optimization
    • Optimizing Assets
    • Audio Optimization Guide
    • Image Optimization Guide
  • ROAR Redivis Instance
    • ROAR Redivis Instance
    • ROAR Data Validator Trigger
    • ROAR Data Validator
  • Logging and Querying
    • ROAR Logging
  • Emulation
    • Running the Emulator
      • Commands
    • Emulator Configuration Guide
      • Configuration
      • Cypress Configuration
      • Setup and Dependencies
      • Firebase CLI Configuration
      • Firebase Emulator Configuration
      • GitHub Secrets and Workflows
      • Importing and Exporting Data
      • Local Environment Variables
  • Clowder Implementation
    • Clowder Integration
    • Letter - Clowder
    • Multichoice - Clowder
    • Phoneme - Clowder
    • ARF & CALF - Clowder

@roar-firebase-functions/core


@roar-firebase-functions/core / FirestoreUserClaimRepository

Class: FirestoreUserClaimRepository

Defined in: packages/core/src/repositories/firestore/FirestoreUserClaimRepository.repository.firestore.ts:22

Repository class for managing user claims in Firestore.

This class extends FirestoreRepository to provide specialized functionality for working with user claims. It provides methods to retrieve user claims based on their ROAR user ID.

Throws

UserClaimRepositoryError

Extends

  • FirestoreBaseRepository<UserClaim>

Implements

  • UserClaimBaseRepository

Constructors

Constructor

new FirestoreUserClaimRepository(): FirestoreUserClaimRepository

Defined in: packages/core/src/repositories/firestore/FirestoreUserClaimRepository.repository.firestore.ts:26

Returns

FirestoreUserClaimRepository

Overrides

FirestoreBaseRepository.constructor

Properties

collection

protected collection: CollectionReference

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:46

Collection reference

Inherited from

FirestoreBaseRepository.collection


collectionGroup

protected collectionGroup: CollectionGroup

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:47

Collection group reference {getCollectionName} - Get collection reference {getCollectionGroupName} - Get collection group reference {getCollectionType} - Get collection type {get} - Get document by ID or with filters {getById} - Get document by ID, helper function for get() {fetchDocument} - Fetch document, helper function for getById() and getWithFilters() {getAll} - Get all documents {runTransaction} - Run transaction {create} - Create document {update} - Update document {delete} - Delete document {getWithFilters} - Get documents with filters, helper function for get()

Inherited from

FirestoreBaseRepository.collectionGroup


collectionType

protected collectionType: CollectionType

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:48

Inherited from

FirestoreBaseRepository.collectionType


filterAdapter

protected filterAdapter: FirestoreFilterAdapter

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:49

Inherited from

FirestoreBaseRepository.filterAdapter

Methods

create()

create(params): Promise<Result<UserClaim>>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:229

Creates a new entity in the repository.

Parameters

params

FirestoreCreateParams

CreateParams

Returns

Promise<Result<UserClaim>>

  • Document data or null

Throws

  • Error creating document

Implementation of

UserClaimBaseRepository.create

Inherited from

FirestoreBaseRepository.create


delete()

delete(params): Promise<void>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:280

Deletes an entity from the repository.

Parameters

params

FirestoreDeleteParams

DeleteParams

Returns

Promise<void>

Throws

  • Error deleting document

Implementation of

UserClaimBaseRepository.delete

Inherited from

FirestoreBaseRepository.delete


fetchDocument()

fetchDocument(params): Promise<Result<UserClaim>>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:178

Helper function to fetch a document fetchDocument

Parameters

params

FirestoreFetchDocumentParams

FetchDocumentParams

Returns

Promise<Result<UserClaim>>

  • Document data or null

Throws

  • Error fetching document

Inherited from

FirestoreBaseRepository.fetchDocument


get()

Get document(s) based on parameters

  • If id is provided, returns a single document
  • If filters are provided, returns multiple documents that match the filters
  • Requires either id or filters to be specified

Param

Parameters for retrieving documents

Param

Document ID for single document retrieval

Param

Array of filters for querying documents

Param

Maximum number of documents to return (for filtered queries)

Param

Fields to include in the result

Param

Firestore transaction

Throws

If neither ID nor filters are provided

Call Signature

get(params): Promise<Result<UserClaim>>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:94

Get document by ID get

Parameters
params

FirestoreGetParams & object

GetParams with ID

Returns

Promise<Result<UserClaim>>

  • Single document or array of documents
Param

Parameters for retrieving documents

Param

Document ID for single document retrieval

Param

Array of filters for querying documents

Param

Maximum number of documents to return (for filtered queries)

Param

Fields to include in the result

Param

Firestore transaction

Throws

If neither ID nor filters are provided

Implementation of

UserClaimBaseRepository.get

Inherited from

FirestoreBaseRepository.get

Call Signature

get(params): Promise<Result<UserClaim>[]>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:102

Get documents by filters get

Parameters
params

FirestoreGetParams & object

GetParams with filters

Returns

Promise<Result<UserClaim>[]>

  • Single document or array of documents
Param

Parameters for retrieving documents

Param

Document ID for single document retrieval

Param

Array of filters for querying documents

Param

Maximum number of documents to return (for filtered queries)

Param

Fields to include in the result

Param

Firestore transaction

Throws

If neither ID nor filters are provided

Implementation of

UserClaimBaseRepository.get

Inherited from

FirestoreBaseRepository.get


getAll()

getAll(): Promise<Result<UserClaim>[]>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:204

Retrieves all entities with optional filtering.

Returns

Promise<Result<UserClaim>[]>

  • Array of document data

Throws

  • Error getting all documents

Implementation of

UserClaimBaseRepository.getAll

Inherited from

FirestoreBaseRepository.getAll


getById()

getById(params): Promise<Result<UserClaim>>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:154

Helper function to get document by ID getById

Parameters

params

FirestoreGetByIdParams

GetByIdParams

Returns

Promise<Result<UserClaim>>

  • Document data or null

Throws

  • Error getting document by ID

Inherited from

FirestoreBaseRepository.getById


getByRoarUid()

getByRoarUid(params): Promise<Result<UserClaim>>

Defined in: packages/core/src/repositories/firestore/FirestoreUserClaimRepository.repository.firestore.ts:38

Retrieves a user claim by Roar UID.

Parameters

params

FirestoreGetByRoarUidParams

The GetUserClaimsByRoarUidParams object.

Returns

Promise<Result<UserClaim>>

The user claims object.

Throws

UserClaimRepositoryError

Implementation of

UserClaimBaseRepository.getByRoarUid


getCollection()

getCollection(): CollectionReference

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:66

Get collection reference getCollection

Returns

CollectionReference

  • Collection reference

Inherited from

FirestoreBaseRepository.getCollection


getCollectionGroup()

getCollectionGroup(): CollectionGroup

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:75

Get collection group reference getCollectionGroup

Returns

CollectionGroup

  • Collection group reference

Inherited from

FirestoreBaseRepository.getCollectionGroup


getCollectionType()

getCollectionType(): CollectionType

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:84

Get collection type getCollectionType

Returns

CollectionType

  • Collection type

Inherited from

FirestoreBaseRepository.getCollectionType


getWithFilters()

getWithFilters(params): Promise<Result<UserClaim>[]>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:300

Get documents with filters getWithFilters

Parameters

params

FirestoreGetWithFiltersParams

GetWithFiltersParams

Returns

Promise<Result<UserClaim>[]>

  • Document data or null

Throws

  • Error getting documents with filters

Inherited from

FirestoreBaseRepository.getWithFilters


runTransaction()

runTransaction(params): Promise<UserClaim>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:360

Executes operations within a transaction context.

Parameters

params

FirestoreRunTransactionParams<UserClaim>

RunTransactionParams

Returns

Promise<UserClaim>

  • Result of the transaction

Throws

  • Error running transaction

Example

await runTransaction({ fn: async (transaction) => { ... } });

Implementation of

UserClaimBaseRepository.runTransaction

Inherited from

FirestoreBaseRepository.runTransaction


update()

update(params): Promise<Result<UserClaim>>

Defined in: packages/core/src/repositories/firestore/FirestoreBaseRepository.repository.firestore.ts:256

Updates an existing entity in the repository.

Parameters

params

FirestoreUpdateParams

UpdateParams

Returns

Promise<Result<UserClaim>>

  • Document data or null

Throws

  • Error updating document

Implementation of

UserClaimBaseRepository.update

Inherited from

FirestoreBaseRepository.update

Edit this page
Last Updated:
Contributors: Kyle
Prev
Class: FirestoreRepositoryError
Next
Class: FirestoreUserClaimRepositoryError