vue-json-viewer
Version:
1 lines • 14.2 kB
JavaScript
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("vue"),require("clipboard")):"function"==typeof define&&define.amd?define(["vue","clipboard"],t):"object"==typeof exports?exports.JsonView=t(require("vue"),require("clipboard")):e.JsonView=t(e.vue,e.clipboard)}(this,function(n,o){return function(n){var o={};function r(e){if(o[e])return o[e].exports;var t=o[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,r),t.l=!0,t.exports}return r.m=n,r.c=o,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)r.d(n,o,function(e){return t[e]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=23)}([function(e,t,n){"use strict";function o(e,t,n,o,r,i,u,s){var a,l="function"==typeof e?e.options:e;if(t&&(l.render=t,l.staticRenderFns=n,l._compiled=!0),o&&(l.functional=!0),i&&(l._scopeId="data-v-"+i),u?(a=function(e){(e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(u)},l._ssrRegister=a):r&&(a=s?function(){r.call(this,this.$root.$options.shadowRoot)}:r),a)if(l.functional){l._injectStyles=a;var d=l.render;l.render=function(e,t){return a.call(t),d(e,t)}}else{var c=l.beforeCreate;l.beforeCreate=c?[].concat(c,a):[a]}return{exports:e,options:l}}n.d(t,"a",function(){return o})},function(e,t,n){"use strict";n.r(t);var o=n(2),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});i(n(25));var o=i(n(21)),r=i(n(34));function i(e){return e&&e.__esModule?e:{default:e}}t.default={name:"JsonViewer",components:{JsonBox:o.default},props:{value:{type:[Object,Array,String,Number,Boolean,Function],required:!0},expandDepth:{type:Number,default:1},copyable:{type:Boolean,default:!1},sort:{type:Boolean,default:!1},boxed:{type:Boolean,default:!1},theme:{type:String,default:"jv-light"}},provide:function(){return{expandDepth:this.expandDepth}},data:function(){return{copied:!1,expandableCode:!1,expandCode:!1}},watch:{value:function(){this.onResized()}},computed:{jvClass:function(){return"jv-container "+this.theme+(this.boxed?" boxed":"")}},mounted:function(){this.boxed&&this.$refs.jsonBox&&(this.onResized(),this.$refs.jsonBox.$el.addEventListener("resized",this.onResized,!0))},methods:{onResized:function(){var e=this;this.$nextTick(function(){250<=e.$refs.jsonBox.$el.clientHeight?e.expandableCode=!0:e.expandableCode=!1})},clip:function(){var e=this;if(!this.copied){var t=new r.default(this.$refs.clip,{text:function(){return JSON.stringify(e.value,null,2)}});t.on("success",function(){e.copied=!0,setTimeout(function(){e.copied=!1},2e3),e.$emit("copied"),t.destroy()})}},toggleExpandCode:function(){this.expandCode=!this.expandCode}}}},function(e,t,n){"use strict";n.r(t);var o=n(4),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=o(n(26)),u=o(n(27)),s=o(n(28)),a=o(n(29)),l=o(n(30)),d=o(n(31)),c=o(n(32));function o(e){return e&&e.__esModule?e:{default:e}}t.default={name:"JsonBox",inject:["expandDepth"],props:{value:{type:[Object,Array,String,Number,Boolean,Function],default:null},keyName:{type:String,default:""},sort:Boolean,depth:{type:Number,default:0}},data:function(){return{expand:!0}},mounted:function(){this.expand=!(this.depth>=this.expandDepth)},methods:{toggle:function(){this.expand=!this.expand;try{this.$el.dispatchEvent(new Event("resized"))}catch(e){var t=document.createEvent("Event");t.initEvent("resized",!0,!1),this.$el.dispatchEvent(t)}}},render:function(e){var t=this,n=[],o=void 0;return null===this.value||void 0===this.value?o=u.default:Array.isArray(this.value)?o=d.default:"object"===r(this.value)?o=l.default:"number"==typeof this.value?o=s.default:"string"==typeof this.value?o=i.default:"boolean"==typeof this.value?o=a.default:"function"==typeof this.value&&(o=c.default),this.keyName&&this.value&&(Array.isArray(this.value)||"object"===r(this.value))&&n.push(e("span",{class:{"jv-toggle":!0,open:!!this.expand},on:{click:this.toggle}})),this.keyName&&n.push(e("span",{class:{"jv-key":!0},domProps:{innerHTML:this.keyName+":"}})),n.push(e(o,{class:{"jv-push":!0},props:{jsonValue:this.value,keyName:this.keyName,sort:this.sort,depth:this.depth,expand:this.expand},on:{"update:expand":function(e){t.expand=e}}})),e("div",{class:{"jv-node":!0}},n)}}},function(e,t,n){"use strict";n.r(t);var o=n(6),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"JsonString",functional:!0,props:{jsonValue:{type:String,required:!0}},render:function(e,t){return e("span",{class:{"jv-item":!0,"jv-string":!0},domProps:{innerHTML:'"'+t.props.jsonValue.toString()+'"'}})}}},function(e,t,n){"use strict";n.r(t);var o=n(8),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"JsonUndefined",functional:!0,props:{jsonValue:{type:Object,default:null}},render:function(e,t){return e("span",{class:{"jv-item":!0,"jv-undefined":!0},domProps:{innerHTML:null===t.props.jsonValue?"null":"undefined"}})}}},function(e,t,n){"use strict";n.r(t);var o=n(10),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"JsonNumber",functional:!0,props:{jsonValue:{type:Number,required:!0}},render:function(e,t){return e("span",{class:{"jv-item":!0,"jv-number":!0},domProps:{innerHTML:t.props.jsonValue.toString()}})}}},function(e,t,n){"use strict";n.r(t);var o=n(12),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"JsonBoolean",functional:!0,props:{jsonValue:Boolean},render:function(e,t){return e("span",{class:{"jv-item":!0,"jv-boolean":!0},domProps:{innerHTML:t.props.jsonValue.toString()}})}}},function(e,t,n){"use strict";n.r(t);var o=n(14),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=n(21),i=(o=r)&&o.__esModule?o:{default:o};t.default={name:"JsonObject",props:{jsonValue:{type:Object,required:!0},keyName:{type:String,default:""},depth:{type:Number,default:0},expand:Boolean,sort:Boolean},computed:{ordered:function(){var t=this;if(!this.sort)return this.jsonValue;var n={};return Object.keys(this.jsonValue).sort().forEach(function(e){n[e]=t.jsonValue[e]}),n}},methods:{toggle:function(){this.$emit("update:expand",!this.expand);try{this.$el.dispatchEvent(new Event("resized"))}catch(e){var t=document.createEvent("Event");t.initEvent("resized",!0,!1),this.$el.dispatchEvent(t)}}},render:function(e){var t=[];for(var n in this.keyName||t.push(e("span",{class:{"jv-toggle":!0,open:!!this.expand},on:{click:this.toggle}})),t.push(e("span",{class:{"jv-item":!0,"jv-object":!0},domProps:{innerHTML:"{"}})),this.ordered)if(this.ordered.hasOwnProperty(n)){var o=this.ordered[n];t.push(e(i.default,{key:n,style:{display:this.expand?void 0:"none"},props:{sort:this.sort,keyName:n,depth:this.depth+1,value:o}}))}return this.expand||t.push(e("span",{style:{display:this.expand?"none":void 0},class:{"jv-ellipsis":!0},on:{click:this.toggle},attrs:{title:"click to reveal object content (keys: "+Object.keys(this.ordered).join(", ")+")"},domProps:{innerHTML:"..."}})),t.push(e("span",{class:{"jv-item":!0,"jv-object":!0},domProps:{innerHTML:"}"}})),e("span",t)}}},function(e,t,n){"use strict";n.r(t);var o=n(16),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=n(21),i=(o=r)&&o.__esModule?o:{default:o};t.default={name:"JsonArray",props:{jsonValue:{type:Array,required:!0},keyName:{type:String,default:""},depth:{type:Number,default:0},sort:Boolean,expand:Boolean},computed:{ordered:function(){var e=this.jsonValue;return this.sort?e.sort():e}},methods:{toggle:function(){this.$emit("update:expand",!this.expand);try{this.$el.dispatchEvent(new Event("resized"))}catch(e){var t=document.createEvent("Event");t.initEvent("resized",!0,!1),this.$el.dispatchEvent(t)}}},render:function(e){var t=[];for(var n in this.keyName||t.push(e("span",{class:{"jv-toggle":!0,open:!!this.expand},on:{click:this.toggle}})),t.push(e("span",{class:{"jv-item":!0,"jv-array":!0},domProps:{innerHTML:"["}})),this.ordered){var o=this.ordered[n];t.push(e(i.default,{key:n,style:{display:this.expand?void 0:"none"},props:{sort:this.sort,depth:this.depth+1,value:o}}))}return this.expand||t.push(e("span",{style:{display:this.expand?"none":void 0},class:{"jv-ellipsis":!0},on:{click:this.toggle},attrs:{title:"click to reveal "+this.jsonValue.length+" hidden items"},domProps:{innerHTML:"..."}})),t.push(e("span",{class:{"jv-item":!0,"jv-array":!0},domProps:{innerHTML:"]"}})),e("span",t)}}},function(e,t,n){"use strict";n.r(t);var o=n(18),r=n.n(o);for(var i in o)"default"!==i&&function(e){n.d(t,e,function(){return o[e]})}(i);t.default=r.a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"JsonFunction",functional:!0,props:{jsonValue:{type:Function,required:!0}},render:function(e,t){return e("span",{class:{"jv-item":!0,"jv-function":!0},attrs:{title:t.props.jsonValue.toString()},domProps:{innerHTML:"<function>"}})}}},function(e,t,n){},function(e,t,n){},function(e,t,n){"use strict";n.r(t);var o=n(3);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);n(33);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/json-box.vue",t.default=u.exports},function(e,t,n){"use strict";var o=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:e.jvClass},[e.copyable?n("div",{staticClass:"jv-tooltip"},[n("span",{ref:"clip",staticClass:"jv-button",class:{copied:e.copied},on:{click:e.clip}},[e._v(e._s(e.copied?"copied!":"copy"))])]):e._e(),e._v(" "),n("div",{staticClass:"jv-code",class:{open:e.expandCode,boxed:e.boxed}},[n("json-box",{ref:"jsonBox",attrs:{value:e.value,sort:e.sort}})],1),e._v(" "),e.expandableCode&&e.boxed?n("div",{staticClass:"jv-more",on:{click:e.toggleExpandCode}},[n("span",{staticClass:"jv-toggle",class:{open:!!e.expandCode}})]):e._e()])},r=[];o._withStripped=!0,n.d(t,"a",function(){return o}),n.d(t,"b",function(){return r})},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o,r=n(24),i=(o=r)&&o.__esModule?o:{default:o};t.default=Object.assign(i.default,{install:function(e){e.component("JsonViewer",i.default)}})},function(e,t,n){"use strict";n.r(t);var o=n(22),r=n(1);for(var i in r)"default"!==i&&function(e){n.d(t,e,function(){return r[e]})}(i);n(35);var u=n(0),s=Object(u.a)(r.default,o.a,o.b,!1,null,null,null);s.options.__file="lib/json-viewer.vue",t.default=s.exports},function(e,t){e.exports=n},function(e,t,n){"use strict";n.r(t);var o=n(5);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/types/json-string.vue",t.default=u.exports},function(e,t,n){"use strict";n.r(t);var o=n(7);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/types/json-undefined.vue",t.default=u.exports},function(e,t,n){"use strict";n.r(t);var o=n(9);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/types/json-number.vue",t.default=u.exports},function(e,t,n){"use strict";n.r(t);var o=n(11);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/types/json-boolean.vue",t.default=u.exports},function(e,t,n){"use strict";n.r(t);var o=n(13);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/types/json-object.vue",t.default=u.exports},function(e,t,n){"use strict";n.r(t);var o=n(15);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/types/json-array.vue",t.default=u.exports},function(e,t,n){"use strict";n.r(t);var o=n(17);for(var r in o)"default"!==r&&function(e){n.d(t,e,function(){return o[e]})}(r);var i=n(0),u=Object(i.a)(o.default,void 0,void 0,!1,null,null,null);u.options.__file="lib/types/json-function.vue",t.default=u.exports},function(e,t,n){"use strict";var o=n(19);n.n(o).a},function(e,t){e.exports=o},function(e,t,n){"use strict";var o=n(20);n.n(o).a}])});