Socket
Socket
Sign inDemoInstall

vue-deepset

Package Overview
Dependencies
0
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 0.6.1 to 0.6.2

10

index.js

@@ -104,8 +104,8 @@ 'use strict';

var key = parts.shift();
if (Object.prototype.hasOwnProperty.call(object, key)) {
if (!parts.length) {
return true;
}
obj = obj[key];
if (!hasOwnProperty(obj, key)) {
return false;
} else if (!parts.length) {
return true;
}
obj = obj[key];
}

@@ -112,0 +112,0 @@ return false;

{
"name": "vue-deepset",
"version": "0.6.1",
"version": "0.6.2",
"description": "Deep set Vue.js objects",

@@ -5,0 +5,0 @@ "main": "index.js",

@@ -139,4 +139,3 @@ # vue-deepset

mutations: VueDeepSet.extendMutation({
SOME_OTHER_MUTATION,
...
// other mutations
})

@@ -155,3 +154,28 @@ })

```
or
```js
var store = new Vuex.Store({
state: {
formData: {
message: 'Hello Vuex!'
}
},
mutations: {
VUEX_DEEP_SET: VueDeepSet.VUEX_DEEP_SET,
// other mutations
}
})
var app = new Vue({
el: '#app',
store,
computed: {
formData () {
return this.$deepModel('formData')
}
}
})
```
### API

@@ -158,0 +182,0 @@

@@ -105,8 +105,8 @@ (function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.VueDeepSet = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){

var key = parts.shift();
if (Object.prototype.hasOwnProperty.call(object, key)) {
if (!parts.length) {
return true;
}
obj = obj[key];
if (!hasOwnProperty(obj, key)) {
return false;
} else if (!parts.length) {
return true;
}
obj = obj[key];
}

@@ -113,0 +113,0 @@ return false;

@@ -1,1 +0,1 @@

(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.VueDeepSet=f()}})(function(){var define,module,exports;return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s}({1:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var _typeof=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(obj){return typeof obj}:function(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj};exports.vueSet=vueSet;exports.vuexSet=vuexSet;exports.VUEX_DEEP_SET=VUEX_DEEP_SET;exports.extendMutation=extendMutation;exports.vueModel=vueModel;exports.vuexModel=vuexModel;exports.deepModel=deepModel;exports.install=install;var _vue=window.Vue;var _vue2=_interopRequireDefault(_vue);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var invalidKey=/^\d|[^a-zA-Z0-9_]/gm;var intKey=/^\d+$/;var charCodeOfDot=".".charCodeAt(0);var reEscapeChar=/\\(\\)?/g;var rePropName=RegExp("[^.[\\]]+"+"|"+"\\[(?:"+"([^\"'].*)"+"|"+"([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2"+")\\]"+"|"+"(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g");function toPath(string){if(Array.isArray(string)){return string}var result=[];if(string.charCodeAt(0)===charCodeOfDot){result.push("")}string.replace(rePropName,function(match,expression,quote,subString){var key=match;if(quote){key=subString.replace(reEscapeChar,"$1")}else if(expression){key=expression.trim()}result.push(key)});return result}function noop(){}function hasOwnProperty(object,property){return Object.prototype.hasOwnProperty.call(object,property)}function deepsetError(message){return new Error("[vue-deepset]: "+message)}function isObjectLike(object){return(typeof object==="undefined"?"undefined":_typeof(object))==="object"&&object!==null}function pathJoin(base,path){try{var connector=path.match(/^\[/)?"":".";return""+(base||"")+(base?connector:"")+path}catch(error){return""}}function pushPaths(object,current,paths){paths.push(current);if(isObjectLike(object)){getPaths(object,current,paths)}}function forEach(object,iteratee){var isArray=Array.isArray(object);var keys=isArray?object:Object.keys(object);keys.forEach(function(value,index){return isArray?iteratee(value,index):iteratee(object[value],value)})}function has(object,path){var obj=object;var parts=toPath(path);while(parts.length){var key=parts.shift();if(Object.prototype.hasOwnProperty.call(object,key)){if(!parts.length){return true}obj=obj[key]}}return false}function getPaths(object){var current=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var paths=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];if(Array.isArray(object)){forEach(object,function(val,idx){pushPaths(val,(current+"."+idx).replace(/^\./,""),paths);pushPaths(val,(current+"["+idx+"]").replace(/^\./,""),paths);pushPaths(val,(current+'["'+idx+'"]').replace(/^\./,""),paths)})}else if(isObjectLike(object)){forEach(object,function(val,key){if(key.match(intKey)!==null){pushPaths(val,(current+"."+key).replace(/^\./,""),paths);pushPaths(val,(current+"["+key+"]").replace(/^\./,""),paths);pushPaths(val,(current+'["'+key+'"]').replace(/^\./,""),paths)}else if(!key.match(invalidKey)){pushPaths(val,(current+"."+key).replace(/^\./,""),paths)}pushPaths(val,(current+'["'+key+'"]').replace(/^\./,""),paths)})}return[].concat(new Set(paths))}function _get(obj,path,defaultValue){try{var o=obj;var fields=Array.isArray(path)?path:toPath(path);while(fields.length){var prop=fields.shift();o=o[prop];if(!fields.length){return o}}}catch(err){return defaultValue}return defaultValue}function getProxy(vm,base,options){noop(options);var isVuex=typeof base==="string";var object=isVuex?_get(vm.$store.state,base):base;return new Proxy(object,{get:function get(target,property){return _get(target,property)},set:function set(target,property,value){isVuex?vuexSet.call(vm,pathJoin(base,property),value):vueSet(target,property,value);return true},deleteProperty:function deleteProperty(){return true},enumerate:function enumerate(target){return Object.keys(target)},ownKeys:function ownKeys(target){return Object.keys(target)},has:function has(target,property){return true},defineProperty:function defineProperty(target){return target},getOwnPropertyDescriptor:function getOwnPropertyDescriptor(target,property){return{value:_get(target,property),writable:false,enumerable:true,configurable:true}}})}function buildVueModel(vm,object,options){var model={};forEach(getPaths(object),function(path){Object.defineProperty(model,path,{configurable:true,enumerable:true,get:function get(){return _get(object,path)},set:function set(value){return vueSet(object,path,value)}})});return model}function buildVuexModel(vm,vuexPath,options){var model=Object.create(null);var object=_get(vm.$store.state,vuexPath);var paths=getPaths(object);forEach(paths,function(path){var propPath=pathJoin(vuexPath,path);Object.defineProperty(model,path,{configurable:true,enumerable:true,get:function get(){return _get(vm.$store.state,propPath)},set:function set(value){return vuexSet.call(vm,propPath,value)}})});return model}function vueSet(object,path,value){try{var parts=toPath(path);var obj=object;while(parts.length){var key=parts.shift();if(!parts.length){_vue2.default.set(obj,key,value)}else if(!hasOwnProperty(obj,key)||obj[key]===null){_vue2.default.set(obj,key,typeof key==="number"?[]:{})}obj=obj[key]}return object}catch(err){throw deepsetError("vueSet unable to set object ("+err.message+")")}}function vuexSet(path,value){if(!isObjectLike(this.$store)){throw deepsetError("could not find vuex store object on instance")}var method=this.$store.commit?"commit":"dispatch";this.$store[method]("VUEX_DEEP_SET",{path:path,value:value})}function VUEX_DEEP_SET(state,_ref){var path=_ref.path,value=_ref.value;vueSet(state,path,value)}function extendMutation(){var mutations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return Object.assign(mutations,{VUEX_DEEP_SET:VUEX_DEEP_SET})}function vueModel(object,options){var opts=Object.assign({},options);if(!isObjectLike(object)){throw deepsetError("invalid object specified for vue model")}else if(opts.useProxy===false||typeof Proxy==="undefined"){return buildVueModel(this,object,opts)}return getProxy(this,object,opts)}function vuexModel(vuexPath,options){var opts=Object.assign({},options);if(typeof vuexPath!=="string"||vuexPath===""){throw deepsetError("invalid vuex path string")}else if(!isObjectLike(this.$store)||!isObjectLike(this.$store.state)){throw deepsetError("no vuex state found")}else if(!has(this.$store.state,vuexPath)){throw deepsetError('cannot find path "'+vuexPath+'" in Vuex store')}else if(opts.useProxy===false||typeof Proxy==="undefined"){return buildVuexModel(this,vuexPath,opts)}return getProxy(this,vuexPath,opts)}function deepModel(base,options){return typeof base==="string"?vuexModel.call(this,base,options):vueModel.call(this,base,options)}function install(VueInstance){VueInstance.prototype.$deepModel=deepModel;VueInstance.prototype.$vueSet=vueSet;VueInstance.prototype.$vuexSet=vuexSet}},{}]},{},[1])(1)});
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.VueDeepSet=f()}})(function(){var define,module,exports;return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s}({1:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});var _typeof=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(obj){return typeof obj}:function(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj};exports.vueSet=vueSet;exports.vuexSet=vuexSet;exports.VUEX_DEEP_SET=VUEX_DEEP_SET;exports.extendMutation=extendMutation;exports.vueModel=vueModel;exports.vuexModel=vuexModel;exports.deepModel=deepModel;exports.install=install;var _vue=window.Vue;var _vue2=_interopRequireDefault(_vue);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var invalidKey=/^\d|[^a-zA-Z0-9_]/gm;var intKey=/^\d+$/;var charCodeOfDot=".".charCodeAt(0);var reEscapeChar=/\\(\\)?/g;var rePropName=RegExp("[^.[\\]]+"+"|"+"\\[(?:"+"([^\"'].*)"+"|"+"([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2"+")\\]"+"|"+"(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))","g");function toPath(string){if(Array.isArray(string)){return string}var result=[];if(string.charCodeAt(0)===charCodeOfDot){result.push("")}string.replace(rePropName,function(match,expression,quote,subString){var key=match;if(quote){key=subString.replace(reEscapeChar,"$1")}else if(expression){key=expression.trim()}result.push(key)});return result}function noop(){}function hasOwnProperty(object,property){return Object.prototype.hasOwnProperty.call(object,property)}function deepsetError(message){return new Error("[vue-deepset]: "+message)}function isObjectLike(object){return(typeof object==="undefined"?"undefined":_typeof(object))==="object"&&object!==null}function pathJoin(base,path){try{var connector=path.match(/^\[/)?"":".";return""+(base||"")+(base?connector:"")+path}catch(error){return""}}function pushPaths(object,current,paths){paths.push(current);if(isObjectLike(object)){getPaths(object,current,paths)}}function forEach(object,iteratee){var isArray=Array.isArray(object);var keys=isArray?object:Object.keys(object);keys.forEach(function(value,index){return isArray?iteratee(value,index):iteratee(object[value],value)})}function has(object,path){var obj=object;var parts=toPath(path);while(parts.length){var key=parts.shift();if(!hasOwnProperty(obj,key)){return false}else if(!parts.length){return true}obj=obj[key]}return false}function getPaths(object){var current=arguments.length>1&&arguments[1]!==undefined?arguments[1]:"";var paths=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];if(Array.isArray(object)){forEach(object,function(val,idx){pushPaths(val,(current+"."+idx).replace(/^\./,""),paths);pushPaths(val,(current+"["+idx+"]").replace(/^\./,""),paths);pushPaths(val,(current+'["'+idx+'"]').replace(/^\./,""),paths)})}else if(isObjectLike(object)){forEach(object,function(val,key){if(key.match(intKey)!==null){pushPaths(val,(current+"."+key).replace(/^\./,""),paths);pushPaths(val,(current+"["+key+"]").replace(/^\./,""),paths);pushPaths(val,(current+'["'+key+'"]').replace(/^\./,""),paths)}else if(!key.match(invalidKey)){pushPaths(val,(current+"."+key).replace(/^\./,""),paths)}pushPaths(val,(current+'["'+key+'"]').replace(/^\./,""),paths)})}return[].concat(new Set(paths))}function _get(obj,path,defaultValue){try{var o=obj;var fields=Array.isArray(path)?path:toPath(path);while(fields.length){var prop=fields.shift();o=o[prop];if(!fields.length){return o}}}catch(err){return defaultValue}return defaultValue}function getProxy(vm,base,options){noop(options);var isVuex=typeof base==="string";var object=isVuex?_get(vm.$store.state,base):base;return new Proxy(object,{get:function get(target,property){return _get(target,property)},set:function set(target,property,value){isVuex?vuexSet.call(vm,pathJoin(base,property),value):vueSet(target,property,value);return true},deleteProperty:function deleteProperty(){return true},enumerate:function enumerate(target){return Object.keys(target)},ownKeys:function ownKeys(target){return Object.keys(target)},has:function has(target,property){return true},defineProperty:function defineProperty(target){return target},getOwnPropertyDescriptor:function getOwnPropertyDescriptor(target,property){return{value:_get(target,property),writable:false,enumerable:true,configurable:true}}})}function buildVueModel(vm,object,options){var model={};forEach(getPaths(object),function(path){Object.defineProperty(model,path,{configurable:true,enumerable:true,get:function get(){return _get(object,path)},set:function set(value){return vueSet(object,path,value)}})});return model}function buildVuexModel(vm,vuexPath,options){var model=Object.create(null);var object=_get(vm.$store.state,vuexPath);var paths=getPaths(object);forEach(paths,function(path){var propPath=pathJoin(vuexPath,path);Object.defineProperty(model,path,{configurable:true,enumerable:true,get:function get(){return _get(vm.$store.state,propPath)},set:function set(value){return vuexSet.call(vm,propPath,value)}})});return model}function vueSet(object,path,value){try{var parts=toPath(path);var obj=object;while(parts.length){var key=parts.shift();if(!parts.length){_vue2.default.set(obj,key,value)}else if(!hasOwnProperty(obj,key)||obj[key]===null){_vue2.default.set(obj,key,typeof key==="number"?[]:{})}obj=obj[key]}return object}catch(err){throw deepsetError("vueSet unable to set object ("+err.message+")")}}function vuexSet(path,value){if(!isObjectLike(this.$store)){throw deepsetError("could not find vuex store object on instance")}var method=this.$store.commit?"commit":"dispatch";this.$store[method]("VUEX_DEEP_SET",{path:path,value:value})}function VUEX_DEEP_SET(state,_ref){var path=_ref.path,value=_ref.value;vueSet(state,path,value)}function extendMutation(){var mutations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};return Object.assign(mutations,{VUEX_DEEP_SET:VUEX_DEEP_SET})}function vueModel(object,options){var opts=Object.assign({},options);if(!isObjectLike(object)){throw deepsetError("invalid object specified for vue model")}else if(opts.useProxy===false||typeof Proxy==="undefined"){return buildVueModel(this,object,opts)}return getProxy(this,object,opts)}function vuexModel(vuexPath,options){var opts=Object.assign({},options);if(typeof vuexPath!=="string"||vuexPath===""){throw deepsetError("invalid vuex path string")}else if(!isObjectLike(this.$store)||!isObjectLike(this.$store.state)){throw deepsetError("no vuex state found")}else if(!has(this.$store.state,vuexPath)){throw deepsetError('cannot find path "'+vuexPath+'" in Vuex store')}else if(opts.useProxy===false||typeof Proxy==="undefined"){return buildVuexModel(this,vuexPath,opts)}return getProxy(this,vuexPath,opts)}function deepModel(base,options){return typeof base==="string"?vuexModel.call(this,base,options):vueModel.call(this,base,options)}function install(VueInstance){VueInstance.prototype.$deepModel=deepModel;VueInstance.prototype.$vueSet=vueSet;VueInstance.prototype.$vuexSet=vuexSet}},{}]},{},[1])(1)});
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc