Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
backbone-nesty
Advanced tools
Support nested data types like collections and models within your Backbone.js models
Support nested data types like collections and models within your Backbone.js models
npm install --save backbone-nesty
require('backbone-nesty')
npm install --save backbone-nesty
require('backbone-nesty')
//wzrd.in/bundle/backbone-nesty@2.0.0
ender add backbone-nesty
require('backbone-nesty')
This package is published with the following editions:
backbone-nesty
aliases backbone-nesty/index.js
which uses Editions to automatically select the correct edition for the consumers environmentbackbone-nesty/source/index.coffee
is Source + CoffeeScript + Requirebackbone-nesty/esnext/index.js
is CoffeeScript Compiled + ESNext + Requirebackbone-nesty/es2015/index.js
is CoffeeScript Compiled + ES2015 + RequireOlder environments may need Babel's Polyfill or something similar.
// Import
var Backbone = require('backbone');
var BackboneNestyModel = require('backbone-nesty').BackboneNestyModel;
// Eye Model
var EyeModel = Backbone.Model.extend({
attributes: {
color: null,
open: false
}
});
// Eye Collection
var EyeCollection = Backbone.Collection.extend({
model: EyeModel
});
// Mouth Model
var MouthModel = Backbone.Model.extend({
attributes: {
open: false
}
});
// Head Model
var HeadModel = BackboneNestyModel.extend({
// Define our nested collections
collections: {
eyes: EyeCollection
},
// Define our nested models
models: {
mouth: MouthModel
}
});
// Instantiate our head with our nested data
var myHead = new HeadModel({
// will create a mouth model with this data
mouth: {
open: true
},
// will create an eyes collection with this data
eyes: [
// will create an eye model with this data
{
id: 'left',
color: 'green',
open: true
},
// will create an eye model with this data
{
id: 'right',
color: 'green',
open: true
}
]
});
// Check
console.log(myHead.toJSON());
console.log(myHead.get('eyes.left.open')); // true
// ^ equiv to myHeader.get('eyes').get('left').get('open')
// Nested Setter
myHead.set('eyes.left.open', false);
// ^ equiv to myHeader.get('eyes').get('right').set('open', false)
// Check
console.log(myHead.toJSON());
console.log(myHead.get('eyes.left.open')); // false
require('backbone-nesty').BackboneNestyModel
is an extended Backbone.js Model that adds the following functionality:
collections
defaults to {}
, an object which keys are the attributes and values are the collection data type for the attributemodels
defaults to {}
, an object which keys are the attributes and values are the model data type for the attributeembed
defaults to {}
, an object which keys are the attributes and values are boolean on whether or not we should embed the full data of this attribute when calling toJSON
on the model or just an id listingstrict
defaults to true
, a boolean for whether or not we should allow unknown attributes to be set on our modeltoJSON()
will serialize the model and all nested data types as well, if the embed property for an nested data type is false, that value will be replaced with an id listing insteadget(key)
adds support for nested getsset(attrs,opts)
adds support for nested sets and will instantiate the value according to the nested data type if applicableDiscover the release history by heading on over to the HISTORY.md
file.
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
These amazing people are maintaining this project:
These amazing people have contributed finances to this project:
Become a sponsor!
These amazing people have contributed code to this project:
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
Unless stated otherwise all works are:
and licensed under:
v2.0.0 2018 January 26
parse()
now forwards the parse
option
FAQs
Support nested data types like collections and models within your Backbone.js models
The npm package backbone-nesty receives a total of 2 weekly downloads. As such, backbone-nesty popularity was classified as not popular.
We found that backbone-nesty demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
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.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.