From 27b8cf489a4349d9f17da4245b107e3e0f23187e Mon Sep 17 00:00:00 2001 From: Hellfar Date: Sat, 3 Jul 2021 19:05:10 +0200 Subject: [PATCH 1/2] Fix notation format about main JS and CSS. --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 48fd930..f666a23 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,8 @@ "name": "bstreeview", "version": "1.2.0", "description": "Bootstrap 4 simple treeview.", - "main": "[\"./dist/css/bstreeview.min.css\",\"./dist/js/bstreeview.min.js\"]", + "style": "dist/css/bstreeview.min.css", + "main": "dist/js/bstreeview.min.js", "dependencies": {}, "devDependencies": {}, "scripts": { From 09e5337816d0c9c2a8934f71aef842f962bcfb73 Mon Sep 17 00:00:00 2001 From: Hellfar Date: Sat, 3 Jul 2021 19:06:44 +0200 Subject: [PATCH 2/2] Fix: re-Compile JS so the dist is updated relative to the src. --- dist/js/bstreeview.min.js | 20 ++++++++++---------- src/js/bstreeview.js | 12 ++++++------ 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/dist/js/bstreeview.min.js b/dist/js/bstreeview.min.js index 2af8ea1..666dc15 100644 --- a/dist/js/bstreeview.min.js +++ b/dist/js/bstreeview.min.js @@ -1,10 +1,10 @@ -/* - @preserve - bstreeview.js - Version: 1.2.0 - Authors: Sami CHNITER - Copyright 2020 - License: Apache License 2.0 - Project: https://github.com/chniter/bstreeview -*/ -!function (t, e, i, s) { "use strict"; var n = { expandIcon: "fa fa-angle-down fa-fw", collapseIcon: "fa fa-angle-right fa-fw", indent: 1.25, parentsMarginLeft: "1.25rem", openNodeLinkOnNewTab: !0 }, a = '
', d = '
', o = '', r = ''; function l(e, i) { this.element = e, this.itemIdPrefix = e.id + "-item-", this.settings = t.extend({}, n, i), this.init() } t.extend(l.prototype, { init: function () { this.tree = [], this.nodes = [], this.settings.data && (this.settings.data.isPrototypeOf(String) && (this.settings.data = t.parseJSON(this.settings.data)), this.tree = t.extend(!0, [], this.settings.data), delete this.settings.data), t(this.element).addClass("bstreeview"), this.initData({ nodes: this.tree }); var i = this; this.build(t(this.element), this.tree, 0), t(this.element).on("click", ".list-group-item", function (s) { t(".state-icon", this).toggleClass(i.settings.expandIcon).toggleClass(i.settings.collapseIcon), s.target.hasAttribute("href") && (i.settings.openNodeLinkOnNewTab ? e.open(s.target.getAttribute("href"), "_blank") : e.location = s.target.getAttribute("href")) }) }, initData: function (e) { if (e.nodes) { var i = e, s = this; t.each(e.nodes, function (t, e) { e.nodeId = s.nodes.length, e.parentId = i.nodeId, s.nodes.push(e), e.nodes && s.initData(e) }) } }, build: function (e, i, s) { var n = this, l = n.settings.parentsMarginLeft; s > 0 && (l = (n.settings.indent + s * n.settings.indent).toString() + "rem;"), s += 1, t.each(i, function (i, g) { var h = t(a).attr("data-target", "#" + n.itemIdPrefix + g.nodeId).attr("style", "padding-left:" + l).attr("aria-level", s); if (g.nodes) { var c = t(o).addClass(n.settings.collapseIcon); h.append(c) } if (g.icon) { var f = t(r).addClass(g.icon); h.append(f) } if (h.append(g.text), g.href && h.attr("href", g.href), g.class && h.addClass(g.class), g.id && h.attr("id", g.id), e.append(h), g.nodes) { var p = t(d).attr("id", n.itemIdPrefix + g.nodeId); e.append(p), n.build(p, g.nodes, s) } }) } }), t.fn.bstreeview = function (e) { return this.each(function () { t.data(this, "plugin_bstreeview") || t.data(this, "plugin_bstreeview", new l(this, e)) }) } }(jQuery, window, document); \ No newline at end of file +/*! @preserve + * bstreeview.js + * Version: 1.2.0 + * Authors: Sami CHNITER + * Copyright 2020 + * License: Apache License 2.0 + * + * Project: https://github.com/chniter/bstreeview + */ +!function($,window,document,undefined){"use strict";var defaults={expandIcon:"fa fa-angle-down fa-fw",collapseIcon:"fa fa-angle-right fa-fw",indent:1.25,parentsMarginLeft:"1.25rem",openNodeLinkOnNewTab:!0},templates_treeviewItem='
',templates_treeviewGroupItem='
',templates_treeviewItemStateIcon='',templates_treeviewItemIcon='';function bstreeView(element,options){this.element=element,this.itemIdPrefix=element.id+"-item-",this.settings=$.extend({},defaults,options),this.init()}$.extend(bstreeView.prototype,{init:function(){this.tree=[],this.nodes=[],this.settings.data&&(this.settings.data.isPrototypeOf(String)&&(this.settings.data=$.parseJSON(this.settings.data)),this.tree=$.extend(!0,[],this.settings.data),delete this.settings.data),$(this.element).addClass("bstreeview"),this.initData({nodes:this.tree});var _this=this;this.build($(this.element),this.tree,0),$(this.element).on("click",".list-group-item",(function(e){$(".state-icon",this).toggleClass(_this.settings.expandIcon).toggleClass(_this.settings.collapseIcon),e.target.hasAttribute("href")&&(_this.settings.openNodeLinkOnNewTab?window.open(e.target.getAttribute("href"),"_blank"):window.location=e.target.getAttribute("href"))}))},initData:function(node){if(node.nodes){var parent=node,_this=this;$.each(node.nodes,(function(index,node){node.nodeId=_this.nodes.length,node.parentId=parent.nodeId,_this.nodes.push(node),node.nodes&&_this.initData(node)}))}},build:function(parentElement,nodes,depth){var _this=this,leftPadding=_this.settings.parentsMarginLeft;depth>0&&(leftPadding=(_this.settings.indent+depth*_this.settings.indent).toString()+"rem;"),depth+=1,$.each(nodes,(function(id,node){var treeItem=$(templates_treeviewItem).attr("data-target","#"+_this.itemIdPrefix+node.nodeId).attr("style","padding-left:"+leftPadding).attr("aria-level",depth);if(node.nodes){var treeItemStateIcon=$(templates_treeviewItemStateIcon).addClass(_this.settings.collapseIcon);treeItem.append(treeItemStateIcon)}if(node.icon){var treeItemIcon=$(templates_treeviewItemIcon).addClass(node.icon);treeItem.append(treeItemIcon)}if(treeItem.append(node.text),node.href&&treeItem.attr("href",node.href),node.class&&treeItem.addClass(node.class),node.id&&treeItem.attr("id",node.id),parentElement.append(treeItem),node.nodes){var treeGroup=$(templates_treeviewGroupItem).attr("id",_this.itemIdPrefix+node.nodeId);parentElement.append(treeGroup),_this.build(treeGroup,node.nodes,depth)}}))}}),$.fn.bstreeview=function(options){return this.each((function(){$.data(this,"plugin_bstreeview")||$.data(this,"plugin_bstreeview",new bstreeView(this,options))}))}}(jQuery,window,document); diff --git a/src/js/bstreeview.js b/src/js/bstreeview.js index ad3a088..22796d8 100644 --- a/src/js/bstreeview.js +++ b/src/js/bstreeview.js @@ -33,8 +33,8 @@ }; /** * BsTreeview Plugin constructor. - * @param {*} element - * @param {*} options + * @param {*} element + * @param {*} options */ function bstreeView(element, options) { this.element = element; @@ -84,7 +84,7 @@ }, /** * Initialize treeview Data. - * @param {*} node + * @param {*} node */ initData: function (node) { if (!node.nodes) return; @@ -103,9 +103,9 @@ }, /** * Build treeview. - * @param {*} parentElement - * @param {*} nodes - * @param {*} depth + * @param {*} parentElement + * @param {*} nodes + * @param {*} depth */ build: function (parentElement, nodes, depth) { var _this = this;