Socket
Book a DemoInstallSign in
Socket

@ember-data-mirror/model

Package Overview
Dependencies
Maintainers
5
Versions
260
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ember-data-mirror/model

A basic Ember implementation of a resource presentation layer for use with @ember-data-mirror/store

latest
Source
npmnpm
Version
5.8.0
Version published
Weekly downloads
584
32.13%
Maintainers
5
Weekly downloads
 
Created
Source

WarpDrive

NPM Stable Version NPM Downloads License EmberJS Discord Community Server WarpDrive Discord Server


WarpDrive is the lightweight data library for web apps —
universal, typed, reactive, and ready to scale.

@ember-data-mirror/model

Runtime classes for use as a source of ResourceSchema and as a ReactiveResource for older "legacy" EmberData/WarpDrive configurations.

If using more recent versions of WarpDrive, install this via @warp-drive-mirror/legacy instead.

Tagged Releases

  • NPM Canary Version
  • NPM Beta Version
  • NPM Stable Version
  • NPM LTS Version
  • NPM LTS 4.12 Version

About

This package implements the EmberData Store's instantiateRecord and teardownRecord hooks as well as configures an associated SchemaService implementation.

Models are defined as classes extending from import Model from '@ember-data-mirror/model'; and the attributes and relationships on these classes are parsed at runtime to supply static "schema" to EmberData's SchemaService.

Resource data for individual resources fetched from your API is presented to the UI via instances of the Models you define. An instantiated Model is referred to as a record.

When we refer to the ModelClass as opposed to a Model or Record we are referring specifically to the class definition and the static schema methods present on it.

When we refer to a record we refer to a specific class instance presenting the resource data for a given type and id.

Defining a Model

app/models/person.js

import Model, { attr, belongsTo, hasMany } from '@ember-data-mirror/model';

export default class PersonModel extends Model {
  @attr name;

  @belongsTo('pet', { inverse: 'owners', async: false }) dog;

  @hasMany('person', { inverse: 'friends', async: true }) friends;
}

modelName convention

By convention, the name of a given model (its type) matches the name of the file in the app/models folder and should be lowercase, singular and dasherized.

Keywords

ember-addon

FAQs

Package last updated on 20 Oct 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts