Changed static structure and wrapped searchsuggestions in function for compatibility
This commit is contained in:
1 parent
b22a732d0e
commit
2ff71ac8da
13 files changed
+46
-43
No files matched your search
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1 @@
|
||||
{"version":3,"file":"adminlte.js","sources":["../../build/js/CardRefresh.js","../../build/js/CardWidget.js","../../build/js/ControlSidebar.js","../../build/js/DirectChat.js","../../build/js/Dropdown.js","../../build/js/ExpandableTable.js","../../build/js/Fullscreen.js","../../build/js/IFrame.js","../../build/js/Layout.js","../../build/js/PushMenu.js","../../build/js/SidebarSearch.js","../../build/js/NavbarSearch.js","../../build/js/Toasts.js","../../build/js/TodoList.js","../../build/js/Treeview.js"],"sourcesContent":["/**\n * --------------------------------------------\n * AdminLTE CardRefresh.js\n * License MIT\n * --------------------------------------------\n */\n\nimport $ from 'jquery'\n\n/**\n * Constants\n * ====================================================\n */\n\nconst NAME = 'CardRefresh'\nconst DATA_KEY = 'lte.cardrefresh'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst JQUERY_NO_CONFLICT = $.fn[NAME]\n\nconst EVENT_LOADED = `loaded${EVENT_KEY}`\nconst EVENT_OVERLAY_ADDED = `overlay.added${EVENT_KEY}`\nconst EVENT_OVERLAY_REMOVED = `overlay.removed${EVENT_KEY}`\n\nconst CLASS_NAME_CARD = 'card'\n\nconst SELECTOR_CARD = `.${CLASS_NAME_CARD}`\nconst SELECTOR_DATA_REFRESH = '[data-card-widget=\"card-refresh\"]'\n\nconst Default = {\n source: '',\n sourceSelector: '',\n params: {},\n trigger: SELECTOR_DATA_REFRESH,\n content: '.card-body',\n loadInContent: true,\n loadOnInit: true,\n loadErrorTemplate: true,\n responseType: '',\n overlayTemplate: '<div class=\"overlay\"><i class=\"fas fa-2x fa-sync-alt fa-spin\"></i></div>',\n errorTemplate: '<span class=\"text-danger\"></span>',\n onLoadStart() {},\n onLoadDone(response) {\n return response\n },\n onLoadFail(_jqXHR, _textStatus, _errorThrown) {}\n}\n\nclass CardRefresh {\n constructor(element, settings) {\n this._element = element\n this._parent = element.parents(SELECTOR_CARD).first()\n this._settings = $.extend({}, Default, settings)\n this._overlay = $(this._settings.overlayTemplate)\n\n if (element.hasClass(CLASS_NAME_CARD)) {\n this._parent = element\n }\n\n if (this._settings.source === '') {\n throw new Error('Source url was not defined. Please specify a url in your CardRefresh source option.')\n }\n }\n\n load() {\n this._addOverlay()\n this._settings.onLoadStart.call($(this))\n\n $.get(this._settings.source, this._settings.params, response => {\n if (this._settings.loadInContent) {\n if (this._settings.sourceSelector !== '') {\n response = $(response).find(this._settings.sourceSelector).html()\n }\n\n this._parent.find(this._settings.content).html(response)\n }\n\n this._settings.onLoadDone.call($(this), response)\n this._removeOverlay()\n }, this._settings.responseType !== '' && this._settings.responseType)\n .fail((jqXHR, textStatus, errorThrown) => {\n this._removeOverlay()\n\n if (this._settings.loadErrorTemplate) {\n const msg = $(this._settings.errorTemplate).text(errorThrown)\n this._parent.find(this._settings.content).empty().append(msg)\n }\n\n this._settings.onLoadFail.call($(this), jqXHR, textStatus, errorThrown)\n })\n\n $(this._element).trigger($.Event(EVENT_LOADED))\n }\n\n _addOverlay() {\n this._parent.append(this._overlay)\n $(this._element).trigger($.Event(EVENT_OVERLAY_ADDED))\n }\n\n _removeOverlay() {\n this._parent.find(this._overlay).remove()\n $(this._element).trigger($.Event(EVENT_OVERLAY_REMOVED))\n }\n\n // Private\n\n _init() {\n $(this).find(this._settings.trigger).on('click', () => {\n this.load()\n })\n\n if (this._settings.loadOnInit) {\n this.load()\n }\n }\n\n // Static\n\n static _jQueryInterface(config) {\n let data = $(this).data(DATA_KEY)\n const _options = $.extend({}, Default, $(this).data())\n\n if (!data) {\n data = new CardRefresh($(this), _options)\n $(this).data(DATA_KEY, typeof config === 'string' ? data : config)\n }\n\n if (typeof config === 'string' && /load/.test(config)) {\n data[config]()\n } else {\n data._init($(this))\n }\n }\n}\n\n/**\n * Data API\n * ====================================================\n */\n\n$(document).on('click', SELECTOR_DATA_REFRESH, function (event) {\n if (event) {\n event.preventDefault()\n }\n\n CardRefresh._jQueryInterface.call($(this), 'load')\n})\n\n$(() => {\n $(SELECTOR_DATA_REFRESH).each(function () {\n CardRefresh._jQueryInterface.call($(this))\n })\n})\n\n/**\n * jQuery API\n * ====================================================\n */\n\n$.fn[NAME] = CardRefresh._jQueryInterface\n$.fn[NAME].Constructor = CardRefresh\n$.fn[NAME].noConflict = function () {\n $.fn[NAME] = JQUERY_NO_CONFLICT\n return CardRefresh._jQueryInterface\n}\n\nexport default CardRefresh\n","/**\n * --------------------------------------------\n * AdminLTE CardWidget.js\n * License MIT\n * --------------------------------------Line truncated
|
||||
Vendored
+7
@@ -0,0 +1,7 @@
|
||||
/*!
|
||||
* AdminLTE v3.2.0 (https://adminlte.io)
|
||||
* Copyright 2014-2022 Colorlib <https://colorlib.com>
|
||||
* Licensed under MIT (https://github.com/ColorlibHQ/AdminLTE/blob/master/LICENSE)
|
||||
*/
|
||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("jquery")):"function"==typeof define&&define.amd?define(["exports","jquery"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).adminlte={},e.jQuery)}(this,(function(e,t){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=a(t),i="CardRefresh",o="lte.cardrefresh",l=n.default.fn[i],s="card",r='[data-card-widget="card-refresh"]',d={source:"",sourceSelector:"",params:{},trigger:r,content:".card-body",loadInContent:!0,loadOnInit:!0,loadErrorTemplate:!0,responseType:"",overlayTemplate:'<div class="overlay"><i class="fas fa-2x fa-sync-alt fa-spin"></i></div>',errorTemplate:'<span class="text-danger"></span>',onLoadStart:function(){},onLoadDone:function(e){return e},onLoadFail:function(e,t,a){}},f=function(){function e(e,t){if(this._element=e,this._parent=e.parents(".card").first(),this._settings=n.default.extend({},d,t),this._overlay=n.default(this._settings.overlayTemplate),e.hasClass(s)&&(this._parent=e),""===this._settings.source)throw new Error("Source url was not defined. Please specify a url in your CardRefresh source option.")}var t=e.prototype;return t.load=function(){var e=this;this._addOverlay(),this._settings.onLoadStart.call(n.default(this)),n.default.get(this._settings.source,this._settings.params,(function(t){e._settings.loadInContent&&(""!==e._settings.sourceSelector&&(t=n.default(t).find(e._settings.sourceSelector).html()),e._parent.find(e._settings.content).html(t)),e._settings.onLoadDone.call(n.default(e),t),e._removeOverlay()}),""!==this._settings.responseType&&this._settings.responseType).fail((function(t,a,i){if(e._removeOverlay(),e._settings.loadErrorTemplate){var o=n.default(e._settings.errorTemplate).text(i);e._parent.find(e._settings.content).empty().append(o)}e._settings.onLoadFail.call(n.default(e),t,a,i)})),n.default(this._element).trigger(n.default.Event("loaded.lte.cardrefresh"))},t._addOverlay=function(){this._parent.append(this._overlay),n.default(this._element).trigger(n.default.Event("overlay.added.lte.cardrefresh"))},t._removeOverlay=function(){this._parent.find(this._overlay).remove(),n.default(this._element).trigger(n.default.Event("overlay.removed.lte.cardrefresh"))},t._init=function(){var e=this;n.default(this).find(this._settings.trigger).on("click",(function(){e.load()})),this._settings.loadOnInit&&this.load()},e._jQueryInterface=function(t){var a=n.default(this).data(o),i=n.default.extend({},d,n.default(this).data());a||(a=new e(n.default(this),i),n.default(this).data(o,"string"==typeof t?a:t)),"string"==typeof t&&/load/.test(t)?a[t]():a._init(n.default(this))},e}();n.default(document).on("click",r,(function(e){e&&e.preventDefault(),f._jQueryInterface.call(n.default(this),"load")})),n.default((function(){n.default(r).each((function(){f._jQueryInterface.call(n.default(this))}))})),n.default.fn[i]=f._jQueryInterface,n.default.fn[i].Constructor=f,n.default.fn[i].noConflict=function(){return n.default.fn[i]=l,f._jQueryInterface};var u="CardWidget",c="lte.cardwidget",h=n.default.fn[u],g="card",p="collapsed-card",m="collapsing-card",v="expanding-card",_="was-collapsed",b="maximized-card",y='[data-card-widget="remove"]',C='[data-card-widget="collapse"]',w='[data-card-widget="maximize"]',x={animationSpeed:"normal",collapseTrigger:C,removeTrigger:y,maximizeTrigger:w,collapseIcon:"fa-minus",expandIcon:"fa-plus",maximizeIcon:"fa-expand",minimizeIcon:"fa-compress"},I=function(){function e(e,t){this._element=e,this._parent=e.parents(".card").first(),e.hasClass(g)&&(this._parent=e),this._settings=n.default.extend({},x,t)}var t=e.prototype;return t.collapse=function(){var e=this;this._parent.addClass(m).children(".card-body, .card-footer").slideUp(this._settings.animationSpeed,(function(){e._parent.addClass(p).removeClass(m)})),this._parent.find("> .card-header "+this._settings.collapseTrigger+" ."+this._settings.collapseIcon).addClass(this._settings.expandIcon).removeClass(this._settings.collapseIcon),this._element.trigger(n.default.Event("collapsed.lte.cardwidget"),this._parent)},t.expand=function(){var e=this;this._parent.addClass(v).children(".card-body, .card-footer").slideDown(this._settings.animationSpeed,(function(){e._parent.removeClass(p).removeClass(v)})),this._parent.find("> .card-header "+this._settings.collapseTrigger+" ."+this._settings.expandIcon).addClass(this._settings.collapseIcon).removeClass(this._settings.expandIcon),this._element.trigger(n.default.Event("expanded.lte.cardwidget"),this._parent)},t.remove=function(){this._parent.slideUp(),this._element.trigger(n.default.Event("removed.lte.cardwidget"),this._parent)},t.toggle=function(){this._parent.hasClass(p)?this.expand():this.collapse()},t.maximize=function(){this._parent.find(this._settings.maximizeTrigger+" ."+this._settings.maximizeIcon).addClass(this._settings.minimizeIcon).removeClass(this._settings.maximizeIcon),this._parent.css({height:this._parent.height(),width:this._parenLine truncated
|
||||
//# sourceMappingURL=adminlte.min.js.map
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"sources":["../../build/js/CardRefresh.js","../../build/js/CardWidget.js","../../build/js/ControlSidebar.js","../../build/js/DirectChat.js","../../build/js/Dropdown.js","../../build/js/ExpandableTable.js","../../build/js/Fullscreen.js","../../build/js/IFrame.js","../../build/js/Layout.js","../../build/js/PushMenu.js","../../build/js/SidebarSearch.js","../../build/js/NavbarSearch.js","../../build/js/Toasts.js","../../build/js/TodoList.js","../../build/js/Treeview.js"],"names":["NAME","DATA_KEY","JQUERY_NO_CONFLICT","$","fn","CLASS_NAME_CARD","SELECTOR_DATA_REFRESH","Default","source","sourceSelector","params","trigger","content","loadInContent","loadOnInit","loadErrorTemplate","responseType","overlayTemplate","errorTemplate","onLoadStart","onLoadDone","response","onLoadFail","_jqXHR","_textStatus","_errorThrown","CardRefresh","element","settings","this","_element","_parent","parents","first","_settings","extend","_overlay","hasClass","Error","load","_this","_addOverlay","call","get","find","html","_removeOverlay","fail","jqXHR","textStatus","errorThrown","msg","text","empty","append","Event","remove","_init","_this2","on","_jQueryInterface","config","data","_options","test","document","event","preventDefault","each","Constructor","noConflict","CLASS_NAME_COLLAPSED","CLASS_NAME_COLLAPSING","CLASS_NAME_EXPANDING","CLASS_NAME_WAS_COLLAPSED","CLASS_NAME_MAXIMIZED","SELECTOR_DATA_REMOVE","SELECTOR_DATA_COLLAPSE","SELECTOR_DATA_MAXIMIZE","animationSpeed","collapseTrigger","removeTrigger","maximizeTrigger","collapseIcon","expandIcon","maximizeIcon","minimizeIcon","CardWidget","collapse","addClass","children","SELECTOR_CARD_BODY","slideUp","removeClass","expand","slideDown","toggle","maximize","css","height","width","transition","delay","queue","$element","dequeue","minimize","style","toggleMaximize","card","_this3","click","SELECTOR_CONTROL_SIDEBAR","SELECTOR_CONTROL_SIDEBAR_CONTENT","SELECTOR_DATA_TOGGLE","SELECTOR_HEADER","SELECTOR_FOOTER","CLASS_NAME_CONTROL_SIDEBAR_ANIMATE","CLASS_NAME_CONTROL_SIDEBAR_OPEN","CLASS_NAME_CONTROL_SIDEBAR_SLIDE","CLASS_NAME_LAYOUT_FIXED","controlsidebarSlide","scrollbarTheme","scrollbarAutoHide","target","ControlSidebar","_config","$body","$html","hide","setTimeout","show","_fixHeight","_fixScrollHeight","notVisible","is","shouldClose","shouldToggle","not","window","resize","scroll","_isNavbarFixed","_isFooterFixed","$controlSidebar","heights","header","outerHeight","footer","positions","Math","abs","scrollTop","navbarFixed","footerFixed","$controlsidebarContent","bottom","top","sidebarHeight","overlayScrollbars","className","sizeAutoCapable","scrollbars","autoHide","clickScrolling","attr","operation","ready","DirectChat","toggleClass","SELECTOR_DROPDOWN_MENU","Dropdown","toggleSubmenu","siblings","next","fixPosition","length","left","right","offset","visiblePart","stopPropagation","SELECTOR_NAVBAR","parent","SELECTOR_EXPANDABLE_BODY","SELECTOR_ARIA_ATTR","ExpandableTable","options","init","_","$header","$type","toggleRow","nodeName","stop","SELECTOR_DATA_WIDGET","SELECTOR_ICON","Fullscreen","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","msFullscreenElement","windowed","fullscreen","toggleIcon","documentElement","requestFullscreen","webkitRequestFullscreen","msRequestFullscreen","exitFullscreen","webkitExitFullscreen","msExitFullscreen","plugin","SELECTOR_DATA_TOGGLE_FULLSCREEN","SELECTOR_CONTENT_WRAPPER","SELECTOR_CONTENT_IFRAME","SELECTOR_TAB_NAV","SELECTOR_TAB_NAVBAR_NAV","SELECTOR_TAB_NAVBAR_NAV_ITEM","SELECTOR_TAB_NAVBAR_NAV_LINK","SELECTOR_TAB_CONTENT","SELECTOR_TAB_EMPTY","SELECTOR_TAB_LOADING","SELECTOR_TAB_PANE","SELECTOR_SIDEBAR_MENU_ITEM","SELECTOR_HEADER_MENU_ITEM","SELECTOR_HEADER_DROPDOWN_ITEM","CLASS_NAME_IFRAME_MODE","CLASS_NAME_FULLSCREEN_MODE","onTabClick","item","onTabChanged","onTabCreated","autoIframeMode","autoItemActive","autoShowNewTab","autoDarkMode","allowDuplicates","allowReload","loadingScreen","useNavbarItems","scrollOffset","scrollBehaviorSwap","iconMaximize","iconMinimize","IFrame","createTab","title","link","uniqueName","autoOpen","tabId","navId","floor","random","newNavItem","unescape","escape","newTabItem","$loadingScreen","fadeIn","switchTab","fadeOut","openTabSidebar","$item","clone","undefined","replace","reload","tab","_setItemActive","removeActiveTab","type","$navClose","$navItem","$navItemParent","navItemIndex","index","prevNavItemIndex","eq","toggleFullscreen","usingDefTab","_setupListeners","$el","console","log","_initFrameElement","frameElement","_navScroll","leftPos","scrollLeft","animate","e","offsetParent","attributes","nodeValue","mousedown","mousedownInterval","clearInterval","setInterval","href","$headerMenuItem","$headerDropdownItem","$sidebarMenuItem","i","prevAll","tabEmpty","windowHeight","navbarHeight","contentWrapperHeight","parseFloat","localStorage","setItem","JSON","stringify","parse","getItem","SELECTOR_MAIN_SIDEBAR","SELECTOR_SIDEBAR","CLASS_NAME_SIDEBAR_FOCUSED","panelAutoHeight","paneLine truncated
|
||||
@@ -0,0 +1,41 @@
|
||||
function searchsuggestions() {
|
||||
const searchinput = document.querySelector("#search");
|
||||
const searchsuggestions = document.querySelector("#searchdropdown");
|
||||
const li = (c) => document.createElement("li").appendChild(c);
|
||||
searchinput.addEventListener("input", (e) => {
|
||||
q(e.target.value).then((d) => {
|
||||
if (d.length < 1) searchsuggestions.replaceChildren(nothing());
|
||||
else searchsuggestions.replaceChildren(...suggestions(d));
|
||||
})
|
||||
});
|
||||
async function q(s) {
|
||||
if (s.length > 0) {
|
||||
try {
|
||||
const response = await fetch("/api/search/?q=" + s);
|
||||
const result = await response.json();
|
||||
return result;
|
||||
} catch(error) {
|
||||
console.log("Error: " + error);
|
||||
}
|
||||
}
|
||||
return [];
|
||||
}
|
||||
function nothing() {
|
||||
const span = document.createElement("span");
|
||||
span.setAttribute("class", "dropdown-item-text");
|
||||
span.insertAdjacentText("afterbegin", "Nothing");
|
||||
return li(span);
|
||||
}
|
||||
function suggestions(d) {
|
||||
const items = [];
|
||||
for (const vid of d) {
|
||||
const a = document.createElement("a");
|
||||
a.setAttribute("class", "dropdown-item")
|
||||
a.setAttribute("href", "/view/" + vid.id);
|
||||
a.insertAdjacentText("afterbegin", vid.name + " " + vid.id);
|
||||
items.push(li(a));
|
||||
}
|
||||
return items;
|
||||
}
|
||||
}
|
||||
searchsuggestions();
|
||||
Reference in new issue
Block a user