u
This commit is contained in:
@@ -6,6 +6,8 @@ export function queryFromParams(searchParams) {
|
||||
filter: searchParams.get('filter') ?? '',
|
||||
brand: searchParams.get('brand') ?? '',
|
||||
supplier: searchParams.get('supplier') ?? '',
|
||||
empty: searchParams.get('empty') ?? '',
|
||||
hierarchy: searchParams.get('hierarchy') ?? '',
|
||||
offset: Math.max(0, Number(searchParams.get('offset')) || 0),
|
||||
};
|
||||
}
|
||||
@@ -13,12 +15,16 @@ export function queryFromParams(searchParams) {
|
||||
export function buildSearchUrl(target, filter = '', offset = 0, options = {}) {
|
||||
let brand = '';
|
||||
let supplier = '';
|
||||
let empty = '';
|
||||
let hierarchy = '';
|
||||
if (typeof options === 'string') {
|
||||
brand = options;
|
||||
supplier = arguments[4] || '';
|
||||
} else if (options && typeof options === 'object') {
|
||||
brand = options.brand || '';
|
||||
supplier = options.supplier || '';
|
||||
empty = options.empty || '';
|
||||
hierarchy = options.hierarchy || '';
|
||||
}
|
||||
|
||||
const params = new URLSearchParams();
|
||||
@@ -26,6 +32,8 @@ export function buildSearchUrl(target, filter = '', offset = 0, options = {}) {
|
||||
if (filter) params.set('filter', filter);
|
||||
if (brand) params.set('brand', brand);
|
||||
if (supplier) params.set('supplier', supplier);
|
||||
if (empty) params.set('empty', empty);
|
||||
if (hierarchy) params.set('hierarchy', hierarchy);
|
||||
if (offset > 0) params.set('offset', String(offset));
|
||||
const qs = params.toString();
|
||||
return qs ? `/artikel?${qs}` : '/artikel';
|
||||
@@ -46,6 +54,8 @@ export function writeArtikelQuery({
|
||||
offset = 0,
|
||||
brand = '',
|
||||
supplier = '',
|
||||
empty = '',
|
||||
hierarchy = '',
|
||||
}) {
|
||||
try {
|
||||
if (!target || target.trim().length < 3) {
|
||||
@@ -54,7 +64,7 @@ export function writeArtikelQuery({
|
||||
}
|
||||
localStorage.setItem(
|
||||
ARTIKEL_QUERY_KEY,
|
||||
JSON.stringify({ target, filter, offset, brand, supplier }),
|
||||
JSON.stringify({ target, filter, offset, brand, supplier, empty, hierarchy }),
|
||||
);
|
||||
} catch {
|
||||
// ignore quota / private mode
|
||||
@@ -76,5 +86,7 @@ export function artikelQueryPath() {
|
||||
return buildSearchUrl(query.target, query.filter ?? '', query.offset ?? 0, {
|
||||
brand: query.brand ?? '',
|
||||
supplier: query.supplier ?? '',
|
||||
empty: query.empty ?? '',
|
||||
hierarchy: query.hierarchy ?? '',
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user