Skip to content

Latest commit

 

History

History
365 lines (235 loc) · 9.06 KB

firestoreadapter.md

File metadata and controls

365 lines (235 loc) · 9.06 KB

EmberFire > FirestoreAdapter

Class: FirestoreAdapter

Persist your Ember Data models in Cloud Firestore

// app/adapters/application.js
import FirestoreAdapter from 'emberfire/adapters/firestore';

export default FirestoreAdapter.extend({
  // configuration goes here
});

Hierarchy

object & Adapter<this>

↳ FirestoreAdapter

Index

Properties

Methods


Properties

enablePersistence

● enablePersistence: boolean

Defined in adapters/firestore.ts:52

Enable offline persistence with Cloud Firestore, it is not enabled by default

// app/adapters/application.js
import FirestoreAdapter from 'emberfire/adapters/firestore';

export default FirestoreAdapter.extend({
  enablePersistence: true
});

firebaseApp

● firebaseApp: ComputedProperty<FirebaseAppService, FirebaseAppService>

Defined in adapters/firestore.ts:118

Override the default FirebaseApp Service used by the FirestoreAdapter: service('firebase-app')

// app/adapters/application.js
import FirestoreAdapter from 'emberfire/adapters/firestore';
import { inject as service } from '@ember/service';

export default FirestoreAdapter.extend({
  firebaseApp: service('firebase-different-app')
});

namespace

● namespace: string | undefined

Defined in adapters/firestore.ts:68

Namespace all of the default collections

// app/adapters/application.js
import FirestoreAdapter from 'emberfire/adapters/firestore';

export default FirestoreAdapter.extend({
  namespace: 'environments/production'
});

persistenceSettings

● persistenceSettings: PersistenceSettings

Defined in adapters/firestore.ts:101

Pass persistence settings to Cloud Firestore, enablePersistence has to be true for these to be used

// app/adapters/application.js
import FirestoreAdapter from 'emberfire/adapters/firestore';

export default FirestoreAdapter.extend({
  enablePersistence: true,
  persistenceSettings: { synchronizeTabs: true }
});

settings

● settings: Settings

Defined in adapters/firestore.ts:84

Override the default configuration of the Cloud Firestore adapter: { timestampsInSnapshots: true }

// app/adapters/application.js
import FirestoreAdapter from 'emberfire/adapters/firestore';

export default FirestoreAdapter.extend({
  settings: { timestampsInSnapshots: true }
});

Methods

createRecord

createRecord<K>(_store: Store, type: ModelRegistry[K], snapshot: Snapshot<K>): Promise<DocumentSnapshot>

Defined in adapters/firestore.ts:181

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
_store Store
type ModelRegistry[K]
snapshot Snapshot<K>

Returns: Promise<DocumentSnapshot>


deleteRecord

deleteRecord<K>(_store: Store, type: ModelRegistry[K], snapshot: Snapshot<K>): Promise<void>

Defined in adapters/firestore.ts:192

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
_store Store
type ModelRegistry[K]
snapshot Snapshot<K>

Returns: Promise<void>


findAll

findAll<K>(store: Store, type: ModelRegistry[K]): Promise<QuerySnapshot>

Defined in adapters/firestore.ts:124

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
store Store
type ModelRegistry[K]

Returns: Promise<QuerySnapshot>


findBelongsTo

findBelongsTo<K>(store: Store, snapshot: Snapshot<K>, url: string, relationship: object): Promise<any>

Defined in adapters/firestore.ts:139

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
store Store
snapshot Snapshot<K>
url string
relationship object

Returns: Promise<any>


findHasMany

findHasMany<K>(store: Store, snapshot: Snapshot<K>, url: string, relationship: object): Promise<any>

Defined in adapters/firestore.ts:128

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
store Store
snapshot Snapshot<K>
url string
relationship object

Returns: Promise<any>


findRecord

findRecord<K>(_store: Store, type: ModelRegistry[K], id: string): Promise<DocumentSnapshot>

Defined in adapters/firestore.ts:120

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
_store Store
type ModelRegistry[K]
id string

Returns: Promise<DocumentSnapshot>


query

query<K>(_store: Store, type: ModelRegistry[K], options?: QueryOptions, _recordArray?: DS.AdapterPopulatedRecordArray<any>): Promise<QuerySnapshot>

Defined in adapters/firestore.ts:148

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
_store Store
type ModelRegistry[K]
Optional options QueryOptions
Optional _recordArray DS.AdapterPopulatedRecordArray<any>

Returns: Promise<QuerySnapshot>


queryRecord

queryRecord<K>(_store: Store, type: ModelRegistry[K], options?: QueryOptions | QueryRecordOptions): Promise<DocumentSnapshot>

Defined in adapters/firestore.ts:152

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
_store Store
type ModelRegistry[K]
Optional options QueryOptions | QueryRecordOptions

Returns: Promise<DocumentSnapshot>


shouldBackgroundReloadRecord

shouldBackgroundReloadRecord(): boolean

Defined in adapters/firestore.ts:170

Returns: boolean


updateRecord

updateRecord<K>(_store: Store, type: ModelRegistry[K], snapshot: Snapshot<K>): Promise<void>

Defined in adapters/firestore.ts:174

Type parameters:

K : keyof ModelRegistry

Parameters:

Name Type
_store Store
type ModelRegistry[K]
snapshot Snapshot<K>

Returns: Promise<void>