/*========================================================================================= File Name: ext-component-tree.js Description: Tree ---------------------------------------------------------------------------------------- Item Name: Vuexy - Vuejs, HTML & Laravel Admin Dashboard Template Author: Pixinvent Author URL: hhttp://www.themeforest.net/user/pixinvent ==========================================================================================*/ $(function () { 'use strict'; var basicTree = $('#jstree-basic'), customIconsTree = $('#jstree-custom-icons'), contextMenu = $('#jstree-context-menu'), dragDrop = $('#jstree-drag-drop'), checkboxTree = $('#jstree-checkbox'), ajaxTree = $('#jstree-ajax'); var assetPath = '../../../app-assets/'; if ($('body').attr('data-framework') === 'laravel') { assetPath = $('body').attr('data-asset-path'); } // Basic if (basicTree.length) { basicTree.jstree(); } // Custom Icons if (customIconsTree.length) { customIconsTree.jstree({ core: { data: [ { text: 'css', children: [ { text: 'app.css', type: 'css' }, { text: 'style.css', type: 'css' } ] }, { text: 'img', state: { opened: true }, children: [ { text: 'bg.jpg', type: 'img' }, { text: 'logo.png', type: 'img' }, { text: 'avatar.png', type: 'img' } ] }, { text: 'js', state: { opened: true }, children: [ { text: 'jquery.js', type: 'js' }, { text: 'app.js', type: 'js' } ] }, { text: 'index.html', type: 'html' }, { text: 'page-one.html', type: 'html' }, { text: 'page-two.html', type: 'html' } ] }, plugins: ['types'], types: { default: { icon: 'far fa-folder' }, html: { icon: 'fab fa-html5 text-danger' }, css: { icon: 'fab fa-css3-alt text-info' }, img: { icon: 'far fa-file-image text-success' }, js: { icon: 'fab fa-node-js text-warning' } } }); } // Context Menu if (contextMenu.length) { contextMenu.jstree({ core: { check_callback: true, data: [ { text: 'css', children: [ { text: 'app.css', type: 'css' }, { text: 'style.css', type: 'css' } ] }, { text: 'img', state: { opened: true }, children: [ { text: 'bg.jpg', type: 'img' }, { text: 'logo.png', type: 'img' }, { text: 'avatar.png', type: 'img' } ] }, { text: 'js', state: { opened: true }, children: [ { text: 'jquery.js', type: 'js' }, { text: 'app.js', type: 'js' } ] }, { text: 'index.html', type: 'html' }, { text: 'page-one.html', type: 'html' }, { text: 'page-two.html', type: 'html' } ] }, plugins: ['types', 'contextmenu'], types: { default: { icon: 'far fa-folder' }, html: { icon: 'fab fa-html5 text-danger' }, css: { icon: 'fab fa-css3-alt text-info' }, img: { icon: 'far fa-file-image text-success' }, js: { icon: 'fab fa-node-js text-warning' } } }); } // Drag Drop if (dragDrop.length) { dragDrop.jstree({ core: { check_callback: true, data: [ { text: 'css', children: [ { text: 'app.css', type: 'css' }, { text: 'style.css', type: 'css' } ] }, { text: 'img', state: { opened: true }, children: [ { text: 'bg.jpg', type: 'img' }, { text: 'logo.png', type: 'img' }, { text: 'avatar.png', type: 'img' } ] }, { text: 'js', state: { opened: true }, children: [ { text: 'jquery.js', type: 'js' }, { text: 'app.js', type: 'js' } ] }, { text: 'index.html', type: 'html' }, { text: 'page-one.html', type: 'html' }, { text: 'page-two.html', type: 'html' } ] }, plugins: ['types', 'dnd'], types: { default: { icon: 'far fa-folder' }, html: { icon: 'fab fa-html5 text-danger' }, css: { icon: 'fab fa-css3-alt text-info' }, img: { icon: 'far fa-file-image text-success' }, js: { icon: 'fab fa-node-js text-warning' } } }); } // Checkbox if (checkboxTree.length) { checkboxTree.jstree({ core: { data: [ { text: 'css', children: [ { text: 'app.css', type: 'css' }, { text: 'style.css', type: 'css' } ] }, { text: 'img', state: { opened: true }, children: [ { text: 'bg.jpg', type: 'img' }, { text: 'logo.png', type: 'img' }, { text: 'avatar.png', type: 'img' } ] }, { text: 'js', state: { opened: true }, children: [ { text: 'jquery.js', type: 'js' }, { text: 'app.js', type: 'js' } ] }, { text: 'index.html', type: 'html' }, { text: 'page-one.html', type: 'html' }, { text: 'page-two.html', type: 'html' } ] }, plugins: ['types', 'checkbox', 'wholerow'], types: { default: { icon: 'far fa-folder' }, html: { icon: 'fab fa-html5 text-danger' }, css: { icon: 'fab fa-css3-alt text-info' }, img: { icon: 'far fa-file-image text-success' }, js: { icon: 'fab fa-node-js text-warning' } } }); } // Ajax Example if (ajaxTree.length) { ajaxTree.jstree({ core: { data: { url: assetPath + 'data/jstree-data.json', dataType: 'json', data: function (node) { return { id: node.id }; } } }, plugins: ['types', 'state'], types: { default: { icon: 'far fa-folder' }, html: { icon: 'fab fa-html5 text-danger' }, css: { icon: 'fab fa-css3-alt text-info' }, img: { icon: 'far fa-file-image text-success' }, js: { icon: 'fab fa-node-js text-warning' } } }); } });