This commit is contained in:
2025-12-08 09:47:31 +07:00
parent 1dbf988073
commit 603d024af3
5 changed files with 36 additions and 210 deletions

View File

@@ -1,40 +1,21 @@
"use strict";
const AdminFunction = (() => {
function capNhatTrangThaiMenu(e) {
!1 === e ? $("#js-admin-content-container").addClass("show-large-menu") : $("#js-admin-content-container").removeClass("show-large-menu"), $("#js-menu-big").toggleClass("hidden", e), $("#js-menu-small").toggleClass("hidden", !e), $("#js-form-search").toggleClass("menu-hide", e), localStorage.setItem(e ? "menu_big" : "menu_small", "hidden"), localStorage.removeItem(e ? "menu_small" : "menu_big");
}
function e(e) {
let t = null;
return function (...n) {
const o = this, a = function () {
t = null, n.length > 0 && !e && func.apply(o, n);
}, i = e && !t;
clearTimeout(t), t = setTimeout(a, wait), i && func.apply(o, n);
};
}
function t(t) {
$("#status_" + t).html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Đang xử lý..</span>'), setTimeout(() => {
$("#status_" + t).html("");
}, 1e3);
}
function n(e) {
$(e).keyup((() => {
$("#js-show-search").show();
}));
$("body").click((() => {
$("#js-show-search").hide();
}));
}
function o(e) {
$("#js-status-hottype-" + e).html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Đang xử lý..</span>'), setTimeout(() => {
$("#js-status-hottype-" + e).html("");
}, 1e3);
}
function i(e) {
$("#overlay").addClass("active"), $(".status-notificatiom").addClass("active"), !0 === e ? $(".status-notificatiom .content").html('<i class="fa fa-check"></i> <b>Cập nhật thành công</b>\n <p>Đơn hàng #000-368 đã được cập nhật thành công</p>') : $(".status-notificatiom .content").html('<i class="fa-solid fa-triangle-exclamation"></i> <b>Lỗi cập nhật</b><p>Có một số vấn đề với hoạt động của bạn.</p>');
}
function r() {
$("#overlay").removeClass("active"), $(".status-notificatiom").removeClass("active");
}
return { capNhatTrangThaiMenu: capNhatTrangThaiMenu, add_product_to_category: t, run_search: n, update_product_hot: o, checkForm: i, closeForm: r };
const o = /* @__PURE__ */ (() => {
function a(t) {
const s = $("#status_" + t);
s.html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Processing...</span>'), setTimeout(() => {
s.html("");
}, 1e3);
}
function n(t) {
const s = $("#js-status-hottype-" + t);
s.html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Processing...</span>'), setTimeout(() => {
s.html("");
}, 1e3);
}
return {
addProductToCategory: a,
markProductAsHot: n
};
})();
export {
o as default
};

View File

@@ -1,65 +0,0 @@
"use strict";
var AdminFunctions = (function () {
function toggleMenuVisibility(hideLargeMenu) {
var contentContainer = $('#js-admin-content-container');
var largeMenu = $('#js-menu-big');
var smallMenu = $('#js-menu-small');
var searchForm = $('#js-form-search');
contentContainer.toggleClass('show-large-menu', !hideLargeMenu);
largeMenu.toggleClass('hidden', hideLargeMenu);
smallMenu.toggleClass('hidden', !hideLargeMenu);
searchForm.toggleClass('menu-hide', hideLargeMenu);
localStorage.setItem(hideLargeMenu ? 'menu_big' : 'menu_small', 'hidden');
localStorage.removeItem(hideLargeMenu ? 'menu_small' : 'menu_big');
}
function debounce(func, wait, immediate) {
var timeout = null;
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var context = this;
var later = function () {
timeout = null;
if (!immediate)
func.apply(context, args);
};
var callNow = immediate && !timeout;
if (timeout !== null) {
clearTimeout(timeout);
}
timeout = setTimeout(later, wait);
if (callNow)
func.apply(context, args);
};
}
function addProductToCategory(productId) {
var statusElement = $('#status_' + productId);
statusElement.html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Processing...</span>');
setTimeout(function () {
statusElement.html('');
}, 1000);
}
function searchSuggestions(inputSelector) {
$(inputSelector).keyup(debounce(function () {
$('#js-show-search').show();
}, 300, false));
$('body').click(function () {
$('#js-show-search').hide();
});
}
function markProductAsHot(productId) {
var statusElement = $('#js-status-hottype-' + productId);
statusElement.html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Processing...</span>');
setTimeout(function () {
statusElement.html('');
}, 1000);
}
return {
toggleMenuVisibility: toggleMenuVisibility,
addProductToCategory: addProductToCategory,
searchSuggestions: searchSuggestions,
markProductAsHot: markProductAsHot
};
})();

View File

@@ -1,46 +1,12 @@
"use strict";
interface AdminFunctions {
toggleMenuVisibility(hideLargeMenu: boolean): void;
addProductToCategory(productId: string): void;
searchSuggestions(inputSelector: string): void;
markProductAsHot(productId: string): void;
}
const AdminFunctions: AdminFunctions = (() => {
function toggleMenuVisibility(hideLargeMenu: boolean): void {
const contentContainer = $('#js-admin-content-container');
const largeMenu = $('#js-menu-big');
const smallMenu = $('#js-menu-small');
const searchForm = $('#js-form-search');
contentContainer.toggleClass('show-large-menu', !hideLargeMenu);
largeMenu.toggleClass('hidden', hideLargeMenu);
smallMenu.toggleClass('hidden', !hideLargeMenu);
searchForm.toggleClass('menu-hide', hideLargeMenu);
localStorage.setItem(hideLargeMenu ? 'menu_big' : 'menu_small', 'hidden');
localStorage.removeItem(hideLargeMenu ? 'menu_small' : 'menu_big');
}
function debounce(func: (...args: any[]) => void, wait: number, immediate: boolean) {
let timeout: ReturnType<typeof setTimeout> | null = null;
return function (this: HTMLInputElement, ...args: any[]) {
const context = this;
const later = function () {
timeout = null;
if (!immediate) func.apply(context, args);
};
const callNow = immediate && !timeout;
if (timeout !== null) {
clearTimeout(timeout);
}
timeout = setTimeout(later, wait);
if (callNow) func.apply(context, args);
};
}
function addProductToCategory(productId: string): void {
const statusElement = $('#status_' + productId);
statusElement.html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Processing...</span>');
@@ -49,16 +15,6 @@ const AdminFunctions: AdminFunctions = (() => {
}, 1000);
}
function searchSuggestions(inputSelector: string): void {
$(inputSelector).keyup(debounce(function (this: HTMLInputElement) {
$('#js-show-search').show();
}, 300, false) as any);
$('body').click(function () {
$('#js-show-search').hide();
});
}
function markProductAsHot(productId: string): void {
const statusElement = $('#js-status-hottype-' + productId);
statusElement.html('<span class="loading loading-bars loading-sm"></span><span class="ml-[3px]">Processing...</span>');
@@ -68,9 +24,9 @@ const AdminFunctions: AdminFunctions = (() => {
}
return {
toggleMenuVisibility,
addProductToCategory,
searchSuggestions,
markProductAsHot
};
})();
export default AdminFunctions;