/**
Documentation : Icons
**/
document.querySelectorAll('.doc-icon-preview').forEach(function(_t) {
var vendor_path = _t.getAttribute('data-vendor-path') || 'assets/svg/icons/';
var vendor_webfont_prefix = _t.getAttribute('data-vendor-webfont-prefix') || 'fi fi-';
var vendor_available_list = _t.getAttribute('data-vendor-available') || 'img,svg,webfont';
vendor_available_list = vendor_available_list.replace(/ /gi, '');
vendor_available_list = vendor_available_list.split(',');
console.log('Total Icons:', _t.querySelectorAll('li').length );
_t.querySelectorAll('li').forEach(function(el) {
// ignore multiple bind -- -- -- -- -- -- -- -- --
if( el.classList.contains('icon-js') ) return;
el.classList.add('icon-js');
// -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
let svgItem = el.querySelector('.svg-wrapper>svg');
if( svgItem ) {
// svgItem.removeAttribute('width'); // overwrite
svgItem.setAttribute('height', '1.5em'); // overwrite
svgItem.setAttribute('width', '1.5em'); // overwrite
}
let icon_name = el.getAttribute('data-icon');
// buttons
let _btnTpl = '';
// -- -- --
if( vendor_available_list.indexOf('webfont') !== -1 )
_btnTpl += 'ICO';
if( vendor_available_list.indexOf('svg') !== -1 )
_btnTpl += 'SVG';
if( vendor_available_list.indexOf('img') !== -1 )
_btnTpl += 'IMG';
// -- -- --
_btnTpl += '';
el.insertAdjacentHTML( 'beforeend', _btnTpl );
// bind click
el.querySelectorAll('.btn-opt-icon').forEach(function(btn) {
btn.addEventListener('click', function(e) {
e.preventDefault();
let icon_img = '
';
let icon_svg = el.querySelector('.svg-wrapper').innerHTML;
// Image
if( ( e.target.classList.contains('icon-img') ) ) {
var icon = icon_img.trim().replace(/\/gi, '>');
// SVG
} else {
var icon = icon_svg.trim()
.replace(/\>/gi, '>')
.replace('