Socket
Socket
Sign inDemoInstall

angular-json-edit

Package Overview
Dependencies
0
Maintainers
1
Versions
26
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.0.2 to 1.0.3

2

bower.json
{
"name": "angular-json-edit",
"version": "1.0.2",
"version": "1.0.3",
"homepage": "https://github.com/Rleahy22/angularJsonEditor",

@@ -5,0 +5,0 @@ "authors": [

@@ -38,2 +38,3 @@ (function() {

function link(scope) {
scope.blurInput = blurInput;
scope.clickAction = clickAction;

@@ -70,3 +71,5 @@ scope.collapsed = [];

'<div ng-if="!isNested(value)" class="json-input-div">' +
'<input type="{{getInputType(value)}}" name="{{key}}" ng-model="parent[key]" class="json-input" required>' +
'<input type="{{getInputType(value)}}" name="{{key}}" ng-model="parent[key]" class="json-input" ng-keydown="blurInput($event)" ng-hide="getInputType(value) === \'boolean\'"">' +
'<select name="{{key}}" class="" ng-model="parent[key]" ng-options="bool for bool in [true, false]" ng-show="getInputType(value) === \'boolean\'">' +
'</select>' +
'</div>' +

@@ -84,2 +87,11 @@ '</label>' +

function blurInput($event) {
var key = $event.keycode || $event.which;
if (key === 13) {
var target = $event.target || $event.srcElement;
target.blur();
}
}
function clickAction($event, key, parent) {

@@ -115,6 +127,6 @@ if (isArray(parent) || typeof parent[key] != 'object') {

function getInputType(value) {
if (typeof value === 'number') {
return 'number';
if (typeof value === 'string') {
return 'text';
} else {
return 'text';
return typeof value;
}

@@ -121,0 +133,0 @@ }

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

!function(){"use strict";angular.module("angular-json-edit",[])}(),function(){"use strict";function e(){function e(e){function n(n,t,r){s(r)||"object"!=typeof r[t]?e.focusInput(n,t,r):e.toggleExpandCollapse(t,r)}function t(n,t){e.isArray(t)?t.splice(n,1):delete t[n]}function r(n,t,r){var o=n.target||n.srcElement;if("INPUT"!=o.tagName&&o.children.length>0)for(var a=0;a<o.children.length;a++)e.focusInput({target:o.children[a]},t,r);"INPUT"==o.tagName&&o.focus()}function o(e){return"number"==typeof e?"number":"text"}function a(n,t){var r={};r[n]=t,e.highlighted.push(r)}function s(e){return Array.isArray(e)}function i(e,n){return n[e].$$collapsed}function l(n,t){var r={},o=!1;return r[n]=t,e.highlighted.forEach(function(e){angular.equals(e[n],r[n])&&(o=!0)}),o}function p(e){return"object"==typeof e?!0:!1}function c(e,n){"undefined"==typeof n[e].$$collapsed?Object.defineProperty(n[e],"$$collapsed",{value:!0,writable:!0,enumerable:!1}):n[e].$$collapsed=!n[e].$$collapsed}function u(n,t){var r={};r[n]=t,e.highlighted.forEach(function(t,o){angular.equals(t[n],r[n])&&e.highlighted.splice(o,1)})}e.clickAction=n,e.collapsed=[],e.deleteProperty=t,e.focusInput=r,e.getInputType=o,e.highlight=a,e.highlighted=[],e.isArray=s,e.isCollapsed=i,e.isHighlighted=l,e.isNested=p,e.toggleExpandCollapse=c,e.unHighlight=u,e.nest='<div class="label-wrapper" ng-class="{\'padded-row\': !isNested(value), \'json-delete-highlight\' : isHighlighted(key, parent), \'json-collapsed-row\' : !isArray(parent) && parent[key].$$collapsed}" ng-click="clickAction($event, key, parent)"><label class="json-form-element"><span class="json-arrow"></span><span class="key-span" ng-click="to(key, parent)" ng-if="!isArray(parent)">{{key}}: {{isNested(value) && isArray(value) ? "[" : "" }}{{isNested(value) && !isArray(value) ? "{" : "" }}{{isNested(value) && isArray(value) && isCollapsed(key, parent) ? " ... ]" : "" }}{{isNested(value) && !isArray(value) && isCollapsed(key, parent) ? " ... }" : "" }}</span><span class="key-span" ng-click="to(key, parent)" ng-if="isArray(parent)">{{isNested(value) && isArray(value) ? "[" : "" }}{{isNested(value) && !isArray(value) ? "{" : "" }}{{isNested(value) && isArray(value) && isCollapsed(key, parent) ? " ... ]" : "" }}{{isNested(value) && !isArray(value) && isCollapsed(key, parent) ? " ... }" : "" }}</span><div ng-if="!isNested(value)" class="json-input-div"><input type="{{getInputType(value)}}" name="{{key}}" ng-model="parent[key]" class="json-input" required></div></label><button class="json-delete json-button" type="button" ng-click="deleteProperty(key, parent)" ng-mouseover="highlight(key, parent)" ng-mouseleave="unHighlight(key, parent)">&times;</button></div><div ng-if="isNested(value)" ng-show="!isCollapsed(key, parent)" class="nested-json"><div ng-repeat="(key, value) in parent[key] track by key" ng-init="parent = child; child = value" class="json-form-row" compile="nest"></div><div json-editor-add-property class="json-new-property padded-row" object="value" newProperty="{}" class="" ng-show="isNested(value)"></div></div><label ng-show="isNested(value) && !isCollapsed(key, parent)" class="json-closing-brace label-wrapper padded-row">{{isArray(value) ? \']\' : \'}\'}}</label>'}var n='<div class="json-container"><div class="json-form-div"><form name="jsonEditorForm" ng-submit="" role="form"><div ng-repeat="(key, value) in config track by key" ng-init="parent = config; child = value" class="json-form" compile="nest" ng-class="{\'json-highlight\' : isHighlighted(key, parent)}"></div><div json-editor-add-property class="json-new-property" object="config" newProperty="{}"></div></form></div></div>',t={link:e,template:n,restrict:"EA",scope:{config:"="}};return t}function n(e){return function(n,t,r){n.$watch(function(e){return e.$eval(r.compile)},function(r){t.html(r),e(t.contents())(n)})}}angular.module("angular-json-edit").directive("jsonEditor",e).directive("compile",n),n.$inject=["$compile"]}(),function(){"use strict";function e(){function e(e){function n(){if(e.isParentArray()&&e.newProperty)switch(e.newProperty.type){case"array":e.object.push([]);break;case"object":e.object.push({});break;case"string":e.object.push(e.newProperty.value||"");break;case"number":e.object.push(parseInt(e.newProperty.value)||0);break;case"boolean":e.object.push(Boolean(e.newProperty.value))}else if(e.newProperty)switch(e.newProperty.type){case"array":e.object[e.newProperty.name]=[];break;case"object":e.object[e.newProperty.name]={};break;case"string":e.object[e.newProperty.name]=e.newProperty.value||"";break;case"number":e.object[e.newProperty.name]=parseInt(e.newProperty.value)||0;break;case"boolean":e.object[e.newProperty.name]=Boolean(e.newProperty.value)}e.newProperty={},e.showForm=!1}function t(n){var t=n.keyCode||n.which;13===t&&e.addProperty()}function r(){return e.newProperty&&"number"===e.newProperty.type?"number":"text"}function o(){return Array.isArray(e.object)}function a(){return e.newProperty?"string"===e.newProperty.type||"number"===e.newProperty.type:void 0}e.addProperty=n,e.checkKeydown=t,e.getInputType=r,e.isParentArray=o,e.showValueField=a}var n='<div class="new-property-div padded-row" ng-show="showForm"><input type="text" placeholder="key" name="newPropertyName" class="json-add-input" ng-model="newProperty.name" ng-show="!isParentArray()"><select name="newPropertyType" class="json-add-input" ng-model="newProperty.type"><option value="" ng-disabled="true">Type</option><option value="array">Array</option><option value="object">Object</option><option value="string">String</option><option value="number">Number</option><option value="boolean">Boolean</option></select><input type="{{getInputType()}}" class="value-field json-add-input" " placeholder="value" name="newPropertyValue" ng-model="newProperty.value" ng-show="showValueField()" ng-keydown="checkKeydown($event)"><select name="newPropertyType" class="json-add-input" ng-model="newProperty.value" ng-show="newProperty.type === \'boolean\'"><option value="true">true</option><option value="">false</option></select><button class="json-button" ng-click="addProperty()" ng-show="newProperty.type">add property</button></div><div class="new-property-button-div" ng-show="!showForm"><button class="json-button padded-row" ng-click="showForm = true">+ add property</button></div>',t={link:e,template:n,restrict:"EA",scope:{object:"=",newProperty:"="}};return t}angular.module("angular-json-edit").directive("jsonEditorAddProperty",e)}();
!function(){"use strict";angular.module("angular-json-edit",[])}(),function(){"use strict";function e(){function e(e){function n(e){var n=e.keycode||e.which;if(13===n){var t=e.target||e.srcElement;t.blur()}}function t(n,t,r){i(r)||"object"!=typeof r[t]?e.focusInput(n,t,r):e.toggleExpandCollapse(t,r)}function r(n,t){e.isArray(t)?t.splice(n,1):delete t[n]}function o(n,t,r){var o=n.target||n.srcElement;if("INPUT"!=o.tagName&&o.children.length>0)for(var a=0;a<o.children.length;a++)e.focusInput({target:o.children[a]},t,r);"INPUT"==o.tagName&&o.focus()}function a(e){return"string"==typeof e?"text":typeof e}function s(n,t){var r={};r[n]=t,e.highlighted.push(r)}function i(e){return Array.isArray(e)}function l(e,n){return n[e].$$collapsed}function p(n,t){var r={},o=!1;return r[n]=t,e.highlighted.forEach(function(e){angular.equals(e[n],r[n])&&(o=!0)}),o}function c(e){return"object"==typeof e?!0:!1}function u(e,n){"undefined"==typeof n[e].$$collapsed?Object.defineProperty(n[e],"$$collapsed",{value:!0,writable:!0,enumerable:!1}):n[e].$$collapsed=!n[e].$$collapsed}function d(n,t){var r={};r[n]=t,e.highlighted.forEach(function(t,o){angular.equals(t[n],r[n])&&e.highlighted.splice(o,1)})}e.blurInput=n,e.clickAction=t,e.collapsed=[],e.deleteProperty=r,e.focusInput=o,e.getInputType=a,e.highlight=s,e.highlighted=[],e.isArray=i,e.isCollapsed=l,e.isHighlighted=p,e.isNested=c,e.toggleExpandCollapse=u,e.unHighlight=d,e.nest='<div class="label-wrapper" ng-class="{\'padded-row\': !isNested(value), \'json-delete-highlight\' : isHighlighted(key, parent), \'json-collapsed-row\' : !isArray(parent) && parent[key].$$collapsed}" ng-click="clickAction($event, key, parent)"><label class="json-form-element"><span class="json-arrow"></span><span class="key-span" ng-click="to(key, parent)" ng-if="!isArray(parent)">{{key}}: {{isNested(value) && isArray(value) ? "[" : "" }}{{isNested(value) && !isArray(value) ? "{" : "" }}{{isNested(value) && isArray(value) && isCollapsed(key, parent) ? " ... ]" : "" }}{{isNested(value) && !isArray(value) && isCollapsed(key, parent) ? " ... }" : "" }}</span><span class="key-span" ng-click="to(key, parent)" ng-if="isArray(parent)">{{isNested(value) && isArray(value) ? "[" : "" }}{{isNested(value) && !isArray(value) ? "{" : "" }}{{isNested(value) && isArray(value) && isCollapsed(key, parent) ? " ... ]" : "" }}{{isNested(value) && !isArray(value) && isCollapsed(key, parent) ? " ... }" : "" }}</span><div ng-if="!isNested(value)" class="json-input-div"><input type="{{getInputType(value)}}" name="{{key}}" ng-model="parent[key]" class="json-input" ng-keydown="blurInput($event)" ng-hide="getInputType(value) === \'boolean\'""><select name="{{key}}" class="" ng-model="parent[key]" ng-options="bool for bool in [true, false]" ng-show="getInputType(value) === \'boolean\'"></select></div></label><button class="json-delete json-button" type="button" ng-click="deleteProperty(key, parent)" ng-mouseover="highlight(key, parent)" ng-mouseleave="unHighlight(key, parent)">&times;</button></div><div ng-if="isNested(value)" ng-show="!isCollapsed(key, parent)" class="nested-json"><div ng-repeat="(key, value) in parent[key] track by key" ng-init="parent = child; child = value" class="json-form-row" compile="nest"></div><div json-editor-add-property class="json-new-property padded-row" object="value" newProperty="{}" class="" ng-show="isNested(value)"></div></div><label ng-show="isNested(value) && !isCollapsed(key, parent)" class="json-closing-brace label-wrapper padded-row">{{isArray(value) ? \']\' : \'}\'}}</label>'}var n='<div class="json-container"><div class="json-form-div"><form name="jsonEditorForm" ng-submit="" role="form"><div ng-repeat="(key, value) in config track by key" ng-init="parent = config; child = value" class="json-form" compile="nest" ng-class="{\'json-highlight\' : isHighlighted(key, parent)}"></div><div json-editor-add-property class="json-new-property" object="config" newProperty="{}"></div></form></div></div>',t={link:e,template:n,restrict:"EA",scope:{config:"="}};return t}function n(e){return function(n,t,r){n.$watch(function(e){return e.$eval(r.compile)},function(r){t.html(r),e(t.contents())(n)})}}angular.module("angular-json-edit").directive("jsonEditor",e).directive("compile",n),n.$inject=["$compile"]}(),function(){"use strict";function e(){function e(e){function n(){if(e.isParentArray()&&e.newProperty)switch(e.newProperty.type){case"array":e.object.push([]);break;case"object":e.object.push({});break;case"string":e.object.push(e.newProperty.value||"");break;case"number":e.object.push(parseInt(e.newProperty.value)||0);break;case"boolean":e.object.push(Boolean(e.newProperty.value))}else if(e.newProperty)switch(e.newProperty.type){case"array":e.object[e.newProperty.name]=[];break;case"object":e.object[e.newProperty.name]={};break;case"string":e.object[e.newProperty.name]=e.newProperty.value||"";break;case"number":e.object[e.newProperty.name]=parseInt(e.newProperty.value)||0;break;case"boolean":e.object[e.newProperty.name]=Boolean(e.newProperty.value)}e.newProperty={},e.showForm=!1}function t(n){var t=n.keyCode||n.which;13===t&&e.addProperty()}function r(){return e.newProperty&&"number"===e.newProperty.type?"number":"text"}function o(){return Array.isArray(e.object)}function a(){return e.newProperty?"string"===e.newProperty.type||"number"===e.newProperty.type:void 0}e.addProperty=n,e.checkKeydown=t,e.getInputType=r,e.isParentArray=o,e.showValueField=a}var n='<div class="new-property-div padded-row" ng-show="showForm"><input type="text" placeholder="key" name="newPropertyName" class="json-add-input" ng-model="newProperty.name" ng-show="!isParentArray()"><select name="newPropertyType" class="json-add-input" ng-model="newProperty.type"><option value="" ng-disabled="true">Type</option><option value="array">Array</option><option value="object">Object</option><option value="string">String</option><option value="number">Number</option><option value="boolean">Boolean</option></select><input type="{{getInputType()}}" class="value-field json-add-input" " placeholder="value" name="newPropertyValue" ng-model="newProperty.value" ng-show="showValueField()" ng-keydown="checkKeydown($event)"><select name="newPropertyType" class="json-add-input" ng-model="newProperty.value" ng-show="newProperty.type === \'boolean\'"><option value="true">true</option><option value="">false</option></select><button class="json-button" ng-click="addProperty()" ng-show="newProperty.type">add property</button></div><div class="new-property-button-div" ng-show="!showForm"><button class="json-button padded-row" ng-click="showForm = true">+ add property</button></div>',t={link:e,template:n,restrict:"EA",scope:{object:"=",newProperty:"="}};return t}angular.module("angular-json-edit").directive("jsonEditorAddProperty",e)}();
{
"name": "angular-json-edit",
"version": "1.0.2",
"version": "1.0.3",
"description": "Infinitely nesting JSON editor for Angular with no dependencies",

@@ -5,0 +5,0 @@ "main": "dist/angularJsonEdit.js",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

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