toolbox-x 2.0.11 → 2.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dom.cjs +28 -113
- package/dist/dom.d.cts +2 -59
- package/dist/dom.d.mts +2 -59
- package/dist/dom.mjs +2 -87
- package/dist/index.cjs +20 -12
- package/dist/index.d.cts +2 -1
- package/dist/index.d.mts +2 -1
- package/dist/index.mjs +2 -2
- package/dist/{objectify-BoIZEKOL.mjs → query-B4Lrr5Vt.mjs} +87 -2
- package/dist/query-BLsaWi3q.d.cts +77 -0
- package/dist/{objectify--6hPlQ7r.cjs → query-BUBCpo-q.cjs} +115 -0
- package/dist/query-Bi_ofCBp.d.mts +77 -0
- package/package.json +1 -1
package/dist/dom.cjs
CHANGED
|
@@ -18,93 +18,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
18
18
|
const require_primitives = require('./primitives-CBGICrDR.cjs');
|
|
19
19
|
const require_specials = require('./specials-dkYP1Nh2.cjs');
|
|
20
20
|
const require_basics = require('./basics-Bb5ovcvz.cjs');
|
|
21
|
-
const
|
|
21
|
+
const require_query = require('./query-BUBCpo-q.cjs');
|
|
22
22
|
|
|
23
|
-
//#region src/dom/query.ts
|
|
24
|
-
/**
|
|
25
|
-
* * Utility to generate query parameters from an object.
|
|
26
|
-
*
|
|
27
|
-
* @param params - Object containing query parameters.
|
|
28
|
-
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
29
|
-
*
|
|
30
|
-
* @example
|
|
31
|
-
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
32
|
-
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
33
|
-
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
34
|
-
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
35
|
-
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
36
|
-
*/
|
|
37
|
-
function generateQueryParams(params = {}) {
|
|
38
|
-
const flattenedParams = require_objectify.flattenObjectKeyValue(params);
|
|
39
|
-
const queryParams = Object.entries(flattenedParams)?.filter(([_, value]) => value != null && !(require_primitives.isString(value) && value?.trim() === ""))?.flatMap(([key, value]) => Array.isArray(value) ? value?.filter((v) => v != null && !(require_primitives.isString(v) && v.trim() === ""))?.map((v) => `${encodeURIComponent(key)}=${encodeURIComponent(String(v))}`) : `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`).join("&");
|
|
40
|
-
return queryParams ? `?${queryParams}` : "";
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
44
|
-
*
|
|
45
|
-
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
46
|
-
*
|
|
47
|
-
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
48
|
-
*/
|
|
49
|
-
function getQueryParams() {
|
|
50
|
-
return Object.fromEntries(new URLSearchParams(window?.location?.search));
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* * Update query params in the browser URL with given key and value.
|
|
54
|
-
* @param key Key for the query to update.
|
|
55
|
-
* @param value Value to updated against the given key.
|
|
56
|
-
*/
|
|
57
|
-
function updateQueryParam(key, value) {
|
|
58
|
-
const url = new URL(window.location.href);
|
|
59
|
-
url.searchParams.set(key, value);
|
|
60
|
-
window.history.replaceState({}, "", url?.toString());
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
64
|
-
* Supports multiple values for the same key by returning arrays.
|
|
65
|
-
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
66
|
-
*
|
|
67
|
-
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
68
|
-
*
|
|
69
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
70
|
-
*
|
|
71
|
-
* @param query - The query string to parse.
|
|
72
|
-
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
73
|
-
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
74
|
-
*/
|
|
75
|
-
function parseQueryString(query, parsePrimitives = true) {
|
|
76
|
-
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
77
|
-
const entries = {};
|
|
78
|
-
for (const [key, value] of params.entries()) if (key in entries) {
|
|
79
|
-
const current = entries[key];
|
|
80
|
-
const array = Array.isArray(current) ? [...current, value] : [current, value];
|
|
81
|
-
entries[key] = parsePrimitives ? require_basics.deepParsePrimitives(array) : array;
|
|
82
|
-
} else entries[key] = value;
|
|
83
|
-
return parsePrimitives ? require_objectify.parseObjectValues(entries) : entries;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
87
|
-
* Supports multiple values for the same key by returning arrays.
|
|
88
|
-
* It returns properly typed object.
|
|
89
|
-
*
|
|
90
|
-
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
91
|
-
*
|
|
92
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
93
|
-
*
|
|
94
|
-
* @param query - The literal query string to parse.
|
|
95
|
-
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
96
|
-
*/
|
|
97
|
-
function parseQueryStringLiteral(query) {
|
|
98
|
-
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
99
|
-
const entries = {};
|
|
100
|
-
for (const [key, value] of params.entries()) if (key in entries) {
|
|
101
|
-
const current = entries[key];
|
|
102
|
-
entries[key] = Array.isArray(current) ? [...current, value] : [current, value];
|
|
103
|
-
} else entries[key] = value;
|
|
104
|
-
return entries;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
//#endregion
|
|
108
23
|
//#region src/dom/storage.ts
|
|
109
24
|
/**
|
|
110
25
|
* * Get item from local storage.
|
|
@@ -338,15 +253,15 @@ const createFormData = (data, configs) => {
|
|
|
338
253
|
const _addToFormData = (key, value) => {
|
|
339
254
|
const transformedKey = _transformKey(key);
|
|
340
255
|
if (_compareKeyPaths(transformedKey, ignoreKeys)) return;
|
|
341
|
-
if (
|
|
342
|
-
else if (
|
|
256
|
+
if (require_query.isCustomFileArray(value)) value?.forEach((file) => formData.append(transformedKey, file?.originFileObj));
|
|
257
|
+
else if (require_query.isFileUpload(value)) {
|
|
343
258
|
if (value?.fileList) value?.fileList.forEach((file) => formData.append(transformedKey, file?.originFileObj));
|
|
344
|
-
else if (value?.file) if (
|
|
259
|
+
else if (value?.file) if (require_query.isCustomFile(value?.file)) formData.append(transformedKey, value?.file?.originFileObj);
|
|
345
260
|
else formData.append(transformedKey, value?.file);
|
|
346
|
-
} else if (
|
|
347
|
-
else if (
|
|
261
|
+
} else if (require_query.isFileOrBlob(value)) formData.append(transformedKey, value);
|
|
262
|
+
else if (require_query.isFileList(value)) for (let i = 0; i < value?.length; i++) formData.append(transformedKey, value.item(i));
|
|
348
263
|
else if (Array.isArray(value)) {
|
|
349
|
-
if (
|
|
264
|
+
if (require_query.isFileArray(value)) if (_shouldBreakArray(key)) value?.forEach((item, index) => {
|
|
350
265
|
_addToFormData(`${transformedKey}[${index}]`, item);
|
|
351
266
|
});
|
|
352
267
|
else value?.forEach((item) => {
|
|
@@ -381,7 +296,7 @@ const createFormData = (data, configs) => {
|
|
|
381
296
|
if (_shouldDotNotate(fullKey)) _addToFormData(fullKey, value);
|
|
382
297
|
else if (require_specials.isNotEmptyObject(value) && !_shouldStringify(fullKey)) if (require_basics.isDateLike(value)) _addToFormData(key, _parseDateLike(value));
|
|
383
298
|
else _processObject(value, key);
|
|
384
|
-
else if (
|
|
299
|
+
else if (require_query.isFileOrBlob(value)) _addToFormData(key, value);
|
|
385
300
|
else if (require_basics.isDateLike(value)) _addToFormData(key, _parseDateLike(value));
|
|
386
301
|
else if (require_specials.isEmptyObject(value)) {
|
|
387
302
|
if (_isRequiredKey(fullKey)) _addToFormData(key, JSON.stringify(value));
|
|
@@ -409,7 +324,7 @@ function serializeForm(form, toQueryString = false) {
|
|
|
409
324
|
if (data[key]) data[key] = Array.isArray(data[key]) ? [...data[key], value.toString()] : [data[key], value.toString()];
|
|
410
325
|
else data[key] = value.toString();
|
|
411
326
|
});
|
|
412
|
-
if (toQueryString) return generateQueryParams(data);
|
|
327
|
+
if (toQueryString) return require_query.generateQueryParams(data);
|
|
413
328
|
return data;
|
|
414
329
|
}
|
|
415
330
|
/**
|
|
@@ -436,7 +351,7 @@ function parseFormData(data, parsePrimitives = true) {
|
|
|
436
351
|
else if (Array.isArray(existing)) parsed[key] = [...existing, value];
|
|
437
352
|
else parsed[key] = value;
|
|
438
353
|
});
|
|
439
|
-
if (parsePrimitives) return
|
|
354
|
+
if (parsePrimitives) return require_query.parseObjectValues(parsed);
|
|
440
355
|
else return parsed;
|
|
441
356
|
}
|
|
442
357
|
|
|
@@ -444,26 +359,26 @@ function parseFormData(data, parsePrimitives = true) {
|
|
|
444
359
|
exports.convertToFormData = createFormData;
|
|
445
360
|
exports.copyToClipboard = copyToClipboard;
|
|
446
361
|
exports.createFormData = createFormData;
|
|
447
|
-
exports.createQueryParams = generateQueryParams;
|
|
448
|
-
exports.formatQueryParams = generateQueryParams;
|
|
449
|
-
exports.generateQueryParams = generateQueryParams;
|
|
362
|
+
exports.createQueryParams = require_query.generateQueryParams;
|
|
363
|
+
exports.formatQueryParams = require_query.generateQueryParams;
|
|
364
|
+
exports.generateQueryParams = require_query.generateQueryParams;
|
|
450
365
|
exports.getFromLocalStorage = getFromLocalStorage;
|
|
451
366
|
exports.getFromSessionStorage = getFromSessionStorage;
|
|
452
|
-
exports.getQueryParams = getQueryParams;
|
|
453
|
-
exports.getQueryStringAsObject = parseQueryString;
|
|
454
|
-
exports.isCustomFile =
|
|
455
|
-
exports.isCustomFileArray =
|
|
456
|
-
exports.isFileArray =
|
|
457
|
-
exports.isFileList =
|
|
458
|
-
exports.isFileOrBlob =
|
|
459
|
-
exports.isFileUpload =
|
|
460
|
-
exports.isOriginFileObj =
|
|
461
|
-
exports.isValidFormData =
|
|
462
|
-
exports.literalQueryStringToObject = parseQueryStringLiteral;
|
|
367
|
+
exports.getQueryParams = require_query.getQueryParams;
|
|
368
|
+
exports.getQueryStringAsObject = require_query.parseQueryString;
|
|
369
|
+
exports.isCustomFile = require_query.isCustomFile;
|
|
370
|
+
exports.isCustomFileArray = require_query.isCustomFileArray;
|
|
371
|
+
exports.isFileArray = require_query.isFileArray;
|
|
372
|
+
exports.isFileList = require_query.isFileList;
|
|
373
|
+
exports.isFileOrBlob = require_query.isFileOrBlob;
|
|
374
|
+
exports.isFileUpload = require_query.isFileUpload;
|
|
375
|
+
exports.isOriginFileObj = require_query.isOriginFileObj;
|
|
376
|
+
exports.isValidFormData = require_query.isValidFormData;
|
|
377
|
+
exports.literalQueryStringToObject = require_query.parseQueryStringLiteral;
|
|
463
378
|
exports.parseFormData = parseFormData;
|
|
464
|
-
exports.parseQueryString = parseQueryString;
|
|
465
|
-
exports.parseQueryStringLiteral = parseQueryStringLiteral;
|
|
466
|
-
exports.queryStringToObject = parseQueryString;
|
|
379
|
+
exports.parseQueryString = require_query.parseQueryString;
|
|
380
|
+
exports.parseQueryStringLiteral = require_query.parseQueryStringLiteral;
|
|
381
|
+
exports.queryStringToObject = require_query.parseQueryString;
|
|
467
382
|
exports.removeFromLocalStorage = removeFromLocalStorage;
|
|
468
383
|
exports.removeFromSessionStorage = removeFromSessionStorage;
|
|
469
384
|
exports.saveToLocalStorage = saveToLocalStorage;
|
|
@@ -471,4 +386,4 @@ exports.saveToSessionStorage = saveToSessionStorage;
|
|
|
471
386
|
exports.serializeForm = serializeForm;
|
|
472
387
|
exports.smoothScrollTo = smoothScrollTo;
|
|
473
388
|
exports.toggleFullScreen = toggleFullScreen;
|
|
474
|
-
exports.updateQueryParam = updateQueryParam;
|
|
389
|
+
exports.updateQueryParam = require_query.updateQueryParam;
|
package/dist/dom.d.cts
CHANGED
|
@@ -14,67 +14,10 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import { J as Deserializer,
|
|
18
|
-
import {
|
|
17
|
+
import { J as Deserializer, ft as Serializer, y as GenericObject } from "./object-DyVg8BFt.cjs";
|
|
18
|
+
import { a as updateQueryParam, i as parseQueryStringLiteral, n as getQueryParams, r as parseQueryString, t as generateQueryParams } from "./query-BLsaWi3q.cjs";
|
|
19
19
|
import { a as OriginFileObj, i as FormDataConfigs, o as ParsedFormData, r as FileUpload, s as SerializedForm, t as CustomFile } from "./form-CHFqlgPr.cjs";
|
|
20
20
|
|
|
21
|
-
//#region src/dom/query.d.ts
|
|
22
|
-
/**
|
|
23
|
-
* * Utility to generate query parameters from an object.
|
|
24
|
-
*
|
|
25
|
-
* @param params - Object containing query parameters.
|
|
26
|
-
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
27
|
-
*
|
|
28
|
-
* @example
|
|
29
|
-
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
30
|
-
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
31
|
-
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
32
|
-
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
33
|
-
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
34
|
-
*/
|
|
35
|
-
declare function generateQueryParams<T extends QueryObject>(params?: T): QueryString;
|
|
36
|
-
/**
|
|
37
|
-
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
38
|
-
*
|
|
39
|
-
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
40
|
-
*
|
|
41
|
-
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
42
|
-
*/
|
|
43
|
-
declare function getQueryParams<QParams extends Record<string, string>>(): QParams;
|
|
44
|
-
/**
|
|
45
|
-
* * Update query params in the browser URL with given key and value.
|
|
46
|
-
* @param key Key for the query to update.
|
|
47
|
-
* @param value Value to updated against the given key.
|
|
48
|
-
*/
|
|
49
|
-
declare function updateQueryParam(key: string, value: string): void;
|
|
50
|
-
/**
|
|
51
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
52
|
-
* Supports multiple values for the same key by returning arrays.
|
|
53
|
-
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
54
|
-
*
|
|
55
|
-
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
56
|
-
*
|
|
57
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
58
|
-
*
|
|
59
|
-
* @param query - The query string to parse.
|
|
60
|
-
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
61
|
-
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
62
|
-
*/
|
|
63
|
-
declare function parseQueryString<QParams extends ParsedQueryGeneric>(query: string, parsePrimitives?: boolean): QParams;
|
|
64
|
-
/**
|
|
65
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
66
|
-
* Supports multiple values for the same key by returning arrays.
|
|
67
|
-
* It returns properly typed object.
|
|
68
|
-
*
|
|
69
|
-
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
70
|
-
*
|
|
71
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
72
|
-
*
|
|
73
|
-
* @param query - The literal query string to parse.
|
|
74
|
-
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
75
|
-
*/
|
|
76
|
-
declare function parseQueryStringLiteral<Q extends string>(query: Q): ParsedQuery<Q>;
|
|
77
|
-
//#endregion
|
|
78
21
|
//#region src/dom/storage.d.ts
|
|
79
22
|
/**
|
|
80
23
|
* * Get item from local storage.
|
package/dist/dom.d.mts
CHANGED
|
@@ -14,67 +14,10 @@
|
|
|
14
14
|
* limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
import { J as Deserializer,
|
|
18
|
-
import {
|
|
17
|
+
import { J as Deserializer, ft as Serializer, y as GenericObject } from "./object-DyVg8BFt.mjs";
|
|
18
|
+
import { a as updateQueryParam, i as parseQueryStringLiteral, n as getQueryParams, r as parseQueryString, t as generateQueryParams } from "./query-Bi_ofCBp.mjs";
|
|
19
19
|
import { a as OriginFileObj, i as FormDataConfigs, o as ParsedFormData, r as FileUpload, s as SerializedForm, t as CustomFile } from "./form-crhNgN40.mjs";
|
|
20
20
|
|
|
21
|
-
//#region src/dom/query.d.ts
|
|
22
|
-
/**
|
|
23
|
-
* * Utility to generate query parameters from an object.
|
|
24
|
-
*
|
|
25
|
-
* @param params - Object containing query parameters.
|
|
26
|
-
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
27
|
-
*
|
|
28
|
-
* @example
|
|
29
|
-
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
30
|
-
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
31
|
-
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
32
|
-
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
33
|
-
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
34
|
-
*/
|
|
35
|
-
declare function generateQueryParams<T extends QueryObject>(params?: T): QueryString;
|
|
36
|
-
/**
|
|
37
|
-
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
38
|
-
*
|
|
39
|
-
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
40
|
-
*
|
|
41
|
-
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
42
|
-
*/
|
|
43
|
-
declare function getQueryParams<QParams extends Record<string, string>>(): QParams;
|
|
44
|
-
/**
|
|
45
|
-
* * Update query params in the browser URL with given key and value.
|
|
46
|
-
* @param key Key for the query to update.
|
|
47
|
-
* @param value Value to updated against the given key.
|
|
48
|
-
*/
|
|
49
|
-
declare function updateQueryParam(key: string, value: string): void;
|
|
50
|
-
/**
|
|
51
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
52
|
-
* Supports multiple values for the same key by returning arrays.
|
|
53
|
-
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
54
|
-
*
|
|
55
|
-
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
56
|
-
*
|
|
57
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
58
|
-
*
|
|
59
|
-
* @param query - The query string to parse.
|
|
60
|
-
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
61
|
-
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
62
|
-
*/
|
|
63
|
-
declare function parseQueryString<QParams extends ParsedQueryGeneric>(query: string, parsePrimitives?: boolean): QParams;
|
|
64
|
-
/**
|
|
65
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
66
|
-
* Supports multiple values for the same key by returning arrays.
|
|
67
|
-
* It returns properly typed object.
|
|
68
|
-
*
|
|
69
|
-
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
70
|
-
*
|
|
71
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
72
|
-
*
|
|
73
|
-
* @param query - The literal query string to parse.
|
|
74
|
-
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
75
|
-
*/
|
|
76
|
-
declare function parseQueryStringLiteral<Q extends string>(query: Q): ParsedQuery<Q>;
|
|
77
|
-
//#endregion
|
|
78
21
|
//#region src/dom/storage.d.ts
|
|
79
22
|
/**
|
|
80
23
|
* * Get item from local storage.
|
package/dist/dom.mjs
CHANGED
|
@@ -16,94 +16,9 @@
|
|
|
16
16
|
|
|
17
17
|
import { a as isNonEmptyString, d as isString } from "./primitives-Djsevc69.mjs";
|
|
18
18
|
import { j as isValidArray, v as isEmptyObject, w as isNotEmptyObject } from "./specials-Hq5Ncd6y.mjs";
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
19
|
+
import { J as isDateLike, n as trimString } from "./basics-Dald7J6c.mjs";
|
|
20
|
+
import { C as isValidFormData, S as isOriginFileObj, _ as isCustomFileArray, a as updateQueryParam, b as isFileOrBlob, g as isCustomFile, i as parseQueryStringLiteral, m as parseObjectValues, n as getQueryParams, r as parseQueryString, t as generateQueryParams, v as isFileArray, x as isFileUpload, y as isFileList } from "./query-B4Lrr5Vt.mjs";
|
|
21
21
|
|
|
22
|
-
//#region src/dom/query.ts
|
|
23
|
-
/**
|
|
24
|
-
* * Utility to generate query parameters from an object.
|
|
25
|
-
*
|
|
26
|
-
* @param params - Object containing query parameters.
|
|
27
|
-
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
28
|
-
*
|
|
29
|
-
* @example
|
|
30
|
-
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
31
|
-
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
32
|
-
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
33
|
-
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
34
|
-
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
35
|
-
*/
|
|
36
|
-
function generateQueryParams(params = {}) {
|
|
37
|
-
const flattenedParams = flattenObjectKeyValue(params);
|
|
38
|
-
const queryParams = Object.entries(flattenedParams)?.filter(([_, value]) => value != null && !(isString(value) && value?.trim() === ""))?.flatMap(([key, value]) => Array.isArray(value) ? value?.filter((v) => v != null && !(isString(v) && v.trim() === ""))?.map((v) => `${encodeURIComponent(key)}=${encodeURIComponent(String(v))}`) : `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`).join("&");
|
|
39
|
-
return queryParams ? `?${queryParams}` : "";
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
43
|
-
*
|
|
44
|
-
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
45
|
-
*
|
|
46
|
-
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
47
|
-
*/
|
|
48
|
-
function getQueryParams() {
|
|
49
|
-
return Object.fromEntries(new URLSearchParams(window?.location?.search));
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* * Update query params in the browser URL with given key and value.
|
|
53
|
-
* @param key Key for the query to update.
|
|
54
|
-
* @param value Value to updated against the given key.
|
|
55
|
-
*/
|
|
56
|
-
function updateQueryParam(key, value) {
|
|
57
|
-
const url = new URL(window.location.href);
|
|
58
|
-
url.searchParams.set(key, value);
|
|
59
|
-
window.history.replaceState({}, "", url?.toString());
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
63
|
-
* Supports multiple values for the same key by returning arrays.
|
|
64
|
-
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
65
|
-
*
|
|
66
|
-
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
67
|
-
*
|
|
68
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
69
|
-
*
|
|
70
|
-
* @param query - The query string to parse.
|
|
71
|
-
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
72
|
-
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
73
|
-
*/
|
|
74
|
-
function parseQueryString(query, parsePrimitives = true) {
|
|
75
|
-
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
76
|
-
const entries = {};
|
|
77
|
-
for (const [key, value] of params.entries()) if (key in entries) {
|
|
78
|
-
const current = entries[key];
|
|
79
|
-
const array = Array.isArray(current) ? [...current, value] : [current, value];
|
|
80
|
-
entries[key] = parsePrimitives ? deepParsePrimitives(array) : array;
|
|
81
|
-
} else entries[key] = value;
|
|
82
|
-
return parsePrimitives ? parseObjectValues(entries) : entries;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Parses a query string (with optional `?` prefix) into an object.
|
|
86
|
-
* Supports multiple values for the same key by returning arrays.
|
|
87
|
-
* It returns properly typed object.
|
|
88
|
-
*
|
|
89
|
-
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
90
|
-
*
|
|
91
|
-
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
92
|
-
*
|
|
93
|
-
* @param query - The literal query string to parse.
|
|
94
|
-
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
95
|
-
*/
|
|
96
|
-
function parseQueryStringLiteral(query) {
|
|
97
|
-
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
98
|
-
const entries = {};
|
|
99
|
-
for (const [key, value] of params.entries()) if (key in entries) {
|
|
100
|
-
const current = entries[key];
|
|
101
|
-
entries[key] = Array.isArray(current) ? [...current, value] : [current, value];
|
|
102
|
-
} else entries[key] = value;
|
|
103
|
-
return entries;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
//#endregion
|
|
107
22
|
//#region src/dom/storage.ts
|
|
108
23
|
/**
|
|
109
24
|
* * Get item from local storage.
|
package/dist/index.cjs
CHANGED
|
@@ -23,7 +23,7 @@ const require_specials = require('./specials-dkYP1Nh2.cjs');
|
|
|
23
23
|
const require_utilities = require('./utilities-CWV1GPGY.cjs');
|
|
24
24
|
const require_basics = require('./basics-Bb5ovcvz.cjs');
|
|
25
25
|
const require_guards = require('./guards-D8Iz6EEy.cjs');
|
|
26
|
-
const
|
|
26
|
+
const require_query = require('./query-BUBCpo-q.cjs');
|
|
27
27
|
|
|
28
28
|
//#region src/string/anagram.ts
|
|
29
29
|
/** `WeakMap` to cache user provided dictionary array */
|
|
@@ -2217,6 +2217,7 @@ exports.countStaticMethods = require_basics.countStaticMethods;
|
|
|
2217
2217
|
exports.countWords = countWords;
|
|
2218
2218
|
exports.countWordsInString = countWords;
|
|
2219
2219
|
exports.createOptionsArray = createOptionsArray;
|
|
2220
|
+
exports.createQueryParams = require_query.generateQueryParams;
|
|
2220
2221
|
exports.debounceAction = require_basics.debounceAction;
|
|
2221
2222
|
exports.deepParsePrimitives = require_basics.deepParsePrimitives;
|
|
2222
2223
|
exports.definePrototypeMethod = require_basics.definePrototypeMethod;
|
|
@@ -2230,15 +2231,15 @@ exports.extractEntries = require_guards.extractObjectEntries;
|
|
|
2230
2231
|
exports.extractKeys = require_guards.extractObjectKeys;
|
|
2231
2232
|
exports.extractKeysDeep = require_guards.extractObjectKeysDeep;
|
|
2232
2233
|
exports.extractMissingElements = findMissingElements;
|
|
2233
|
-
exports.extractNewFields =
|
|
2234
|
+
exports.extractNewFields = require_query.extractNewFields;
|
|
2234
2235
|
exports.extractNumbers = extractNumbersFromString;
|
|
2235
2236
|
exports.extractNumbersFromString = extractNumbersFromString;
|
|
2236
2237
|
exports.extractObjectEntries = require_guards.extractObjectEntries;
|
|
2237
2238
|
exports.extractObjectKeys = require_guards.extractObjectKeys;
|
|
2238
2239
|
exports.extractObjectKeysDeep = require_guards.extractObjectKeysDeep;
|
|
2239
2240
|
exports.extractURLs = require_guards.extractURLs;
|
|
2240
|
-
exports.extractUpdatedAndNewFields =
|
|
2241
|
-
exports.extractUpdatedFields =
|
|
2241
|
+
exports.extractUpdatedAndNewFields = require_query.extractUpdatedAndNewFields;
|
|
2242
|
+
exports.extractUpdatedFields = require_query.extractUpdatedFields;
|
|
2242
2243
|
exports.factorial = factorial;
|
|
2243
2244
|
exports.factorsOf = getFactors;
|
|
2244
2245
|
exports.fibonacciGenerator = fibonacciGenerator;
|
|
@@ -2246,14 +2247,16 @@ exports.filterArrayOfObjects = require_guards.filterArrayOfObjects;
|
|
|
2246
2247
|
exports.findMissingElements = findMissingElements;
|
|
2247
2248
|
exports.findPrimeNumbers = require_guards.findPrimeNumbers;
|
|
2248
2249
|
exports.flattenArray = require_guards.flattenArray;
|
|
2249
|
-
exports.flattenObjectDotNotation =
|
|
2250
|
-
exports.flattenObjectKeyValue =
|
|
2250
|
+
exports.flattenObjectDotNotation = require_query.flattenObjectDotNotation;
|
|
2251
|
+
exports.flattenObjectKeyValue = require_query.flattenObjectKeyValue;
|
|
2251
2252
|
exports.formatCurrency = require_utilities.formatCurrency;
|
|
2252
2253
|
exports.formatNumberWithPluralUnit = require_guards.formatUnitWithPlural;
|
|
2254
|
+
exports.formatQueryParams = require_query.generateQueryParams;
|
|
2253
2255
|
exports.formatUnitWithPlural = require_guards.formatUnitWithPlural;
|
|
2254
2256
|
exports.formatWithPlural = require_guards.formatUnitWithPlural;
|
|
2255
2257
|
exports.generateAnagrams = generateAnagrams;
|
|
2256
2258
|
exports.generateFibonacci = fibonacciGenerator;
|
|
2259
|
+
exports.generateQueryParams = require_query.generateQueryParams;
|
|
2257
2260
|
exports.generateRandomID = require_basics.generateRandomID;
|
|
2258
2261
|
exports.getAverage = getAverage;
|
|
2259
2262
|
exports.getAverageOfNumbers = getAverage;
|
|
@@ -2282,6 +2285,7 @@ exports.getNumbersInRange = getNumbersInRange;
|
|
|
2282
2285
|
exports.getOrdinal = require_utilities.getOrdinal;
|
|
2283
2286
|
exports.getOrdinalNumber = require_utilities.getOrdinal;
|
|
2284
2287
|
exports.getPrimeNumbers = require_guards.findPrimeNumbers;
|
|
2288
|
+
exports.getQueryStringAsObject = require_query.parseQueryString;
|
|
2285
2289
|
exports.getRandomDecimal = require_utilities.getRandomFloat;
|
|
2286
2290
|
exports.getRandomFloat = require_utilities.getRandomFloat;
|
|
2287
2291
|
exports.getRandomInt = getRandomNumber;
|
|
@@ -2301,9 +2305,10 @@ exports.isPrime = require_guards.isPrime;
|
|
|
2301
2305
|
exports.isPrimeNumber = require_guards.isPrime;
|
|
2302
2306
|
exports.joinArrayElements = require_basics.convertArrayToString;
|
|
2303
2307
|
exports.levenshteinDistance = getLevenshteinDistance;
|
|
2308
|
+
exports.literalQueryStringToObject = require_query.parseQueryStringLiteral;
|
|
2304
2309
|
exports.maskString = require_guards.maskString;
|
|
2305
|
-
exports.mergeAndFlattenObjects =
|
|
2306
|
-
exports.mergeObjects =
|
|
2310
|
+
exports.mergeAndFlattenObjects = require_query.mergeAndFlattenObjects;
|
|
2311
|
+
exports.mergeObjects = require_query.mergeObjects;
|
|
2307
2312
|
exports.moveArrayElement = moveArrayElement;
|
|
2308
2313
|
exports.naturalSort = require_basics.naturalSort;
|
|
2309
2314
|
exports.naturalSortForString = require_basics.naturalSort;
|
|
@@ -2319,15 +2324,18 @@ exports.omitFields = deleteFields;
|
|
|
2319
2324
|
exports.omitObjectFields = deleteFields;
|
|
2320
2325
|
exports.parseJSON = require_basics.parseJSON;
|
|
2321
2326
|
exports.parseJsonDeep = require_basics.parseJSON;
|
|
2322
|
-
exports.parseJsonToObject =
|
|
2327
|
+
exports.parseJsonToObject = require_query.parseJsonToObject;
|
|
2323
2328
|
exports.parseNumbersFromText = extractNumbersFromString;
|
|
2324
|
-
exports.parseObjectValues =
|
|
2329
|
+
exports.parseObjectValues = require_query.parseObjectValues;
|
|
2325
2330
|
exports.parsePrimitivesDeep = require_basics.deepParsePrimitives;
|
|
2326
|
-
exports.
|
|
2331
|
+
exports.parseQueryString = require_query.parseQueryString;
|
|
2332
|
+
exports.parseQueryStringLiteral = require_query.parseQueryStringLiteral;
|
|
2333
|
+
exports.parseStringifiedObjectValues = require_query.parseObjectValues;
|
|
2327
2334
|
exports.pickFields = pickFields;
|
|
2328
2335
|
exports.pickFieldsByCondition = pickObjectFieldsByCondition;
|
|
2329
2336
|
exports.pickObjectFields = pickFields;
|
|
2330
2337
|
exports.pickObjectFieldsByCondition = pickObjectFieldsByCondition;
|
|
2338
|
+
exports.queryStringToObject = require_query.parseQueryString;
|
|
2331
2339
|
exports.remapFields = remapFields;
|
|
2332
2340
|
exports.remapObjectFields = remapFields;
|
|
2333
2341
|
exports.removeDuplicates = removeDuplicatesFromArray;
|
|
@@ -2346,7 +2354,7 @@ exports.roundNumberToNearestInterval = require_utilities.roundToNearest;
|
|
|
2346
2354
|
exports.roundToDecimal = roundNumber;
|
|
2347
2355
|
exports.roundToNearest = require_utilities.roundToNearest;
|
|
2348
2356
|
exports.roundToNearestInterval = require_utilities.roundToNearest;
|
|
2349
|
-
exports.sanitizeData =
|
|
2357
|
+
exports.sanitizeData = require_query.sanitizeData;
|
|
2350
2358
|
exports.shuffleArray = require_guards.shuffleArray;
|
|
2351
2359
|
exports.slugifyString = require_guards.slugifyString;
|
|
2352
2360
|
exports.sortAnArray = require_basics.sortAnArray;
|
package/dist/index.d.cts
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
import { $n as NumberType, Bn as DecimalOptions, D as NumericDotKey, E as NestedPrimitiveKey, F as SanitizeOptions, I as SanitizedData, In as BnDigitResult, Ln as ConvertOptions, O as ObjectEntry, Q as FlattenPartial, Rn as ConvertedDecimal, Un as FrankFurterCurrency, V as BasicPrimitive, Xn as LocaleCode, Zn as LooseRomanNumeral, a as ConvertObjectOptions, ar as RomanCapital, c as DeepKeys, ci as Tuple, ct as Numeric, g as FlattenDotValue, ir as RangedNumbers, k as Objects, lt as OwnKeys, nr as RandomNumberOptions, nt as Maybe, o as ConvertedObject, p as ExpandAll, pi as Unit, rr as RangeOptions, s as CountryDetails, tr as PercentageOptions, u as DotNotationKey, ut as PartialOrRequired, v as FlattenLeafValue, w as MergeAll, y as GenericObject, z as Any, zn as CurrencyCode } from "./object-DyVg8BFt.cjs";
|
|
18
18
|
import { T as DiffResult, f as AnagramOptions, g as CharDiffResult, j as MaskOptions } from "./string-EMT7czsU.cjs";
|
|
19
19
|
import { n as convertStringCase, t as capitalizeString } from "./case-DMCkxWbW.cjs";
|
|
20
|
+
import { i as parseQueryStringLiteral, r as parseQueryString, t as generateQueryParams } from "./query-BLsaWi3q.cjs";
|
|
20
21
|
import { c as OrderOption, l as SortByOption, n as FindOptions, s as OptionsConfig, t as FieldValue, u as SortNature } from "./array-ChT6TxQ7.cjs";
|
|
21
22
|
import { C as shuffleArray, S as isInvalidOrEmptyArray, _ as findPrimeNumbers, a as deepParsePrimitives, b as flattenArray, c as getInstanceGetterNames, d as getStaticMethodNames, f as isDeepEqual, g as throttleAction, h as stripJsonEdgeGarbage, i as debounceAction, l as getInstanceMethodNames, m as stableStringify, n as countInstanceMethods, o as definePrototypeMethod, p as parseJSON, r as countStaticMethods, s as getClassDetails, t as convertArrayToString, u as getStaticGetterNames, v as isPrime, x as getLastArrayElement, y as filterArrayOfObjects } from "./index-BgomIbws.cjs";
|
|
22
23
|
import { n as trimString, r as truncateString, t as generateRandomID } from "./basics-DlwGpXu-.cjs";
|
|
@@ -1235,4 +1236,4 @@ declare function remapFields<Source extends GenericObject, Target extends Record
|
|
|
1235
1236
|
*/
|
|
1236
1237
|
declare function getCountryByPhone(phone: number | string): CountryDetails[];
|
|
1237
1238
|
//#endregion
|
|
1238
|
-
export { Currency, Finder, Unit, Unit as UnitConverter, convertToRomanNumerals as arabicToRoman, convertToRomanNumerals, convertToRomanNumerals as integerToRoman, convertToRomanNumerals as numberToRoman, convertToRomanNumerals as numericToRoman, convertToRomanNumerals as toRoman, convertToRomanNumerals as toRomanNumeral, averageByField, averageByField as avgByField, banglaToDigit, getAverage as calculateAverage, getAverage, getAverage as getAverageOfNumbers, factorial as calculateFactorial, factorial, factorial as getFactorial, calculateHCF as calculateGCD, calculateHCF, calculateLCM as calculateLCD, calculateLCM, calculatePercentage, capitalizeString, getOrdinal as cardinalToOrdinal, getOrdinal as convertNumberToOrdinal, getOrdinal as convertToOrdinal, getOrdinal, getOrdinal as getOrdinalNumber, getOrdinal as numberToOrdinal, numberToWordsOrdinal as cardinalWordsToOrdinal, numberToWordsOrdinal as convertNumberToWordsOrdinal, numberToWordsOrdinal, clampNumber, cloneObject, naturalSort as compareNaturally, naturalSort as compareSorter, naturalSort, naturalSort as naturalSortForString, computeTextDiff, convertArrayToString, convertArrayToString as joinArrayElements, formatCurrency as convertNumberToCurrency, formatCurrency, numberToWords as convertNumberToWords, numberToWords, convertObjectValues, romanToInteger as convertRomanToArabic, romanToInteger as convertRomanToInteger, romanToInteger as convertRomanToNumeric, romanToInteger as romanToArabic, romanToInteger, romanToInteger as romanToNumeric, convertStringCase, convertToDecimal, convertToDecimal as convertToFixed, wordsToNumber as convertWordToNumber, wordsToNumber as convertWordsToNumber, wordsToNumber as wordToNumber, wordsToNumber, countInstanceMethods, countInstanceMethods as getInstanceMethodsCount, countObjectFields, countStaticMethods, countStaticMethods as getStaticMethodsCount, countWords, countWords as countWordsInString, countWords as wordCount, createOptionsArray, debounceAction, deepParsePrimitives, deepParsePrimitives as parsePrimitivesDeep, definePrototypeMethod, deleteFields, deleteFields as deleteObjectFields, deleteFields as omitFields, deleteFields as omitObjectFields, deleteFields as removeFields, deleteFields as removeObjectFields, digitToBangla, getDuplicates as extractDuplicates, getDuplicates as extractDuplicatesFromArray, getDuplicates, getDuplicates as getDuplicatesFromArray, extractEmails, extractObjectEntries as extractEntries, extractObjectEntries, extractObjectEntries as objectEntries, extractObjectKeys as extractKeys, extractObjectKeys, extractObjectKeysDeep as extractKeysDeep, extractObjectKeysDeep, findMissingElements as extractMissingElements, findMissingElements, findMissingElements as getMissingElements, extractNewFields, extractNumbersFromString as extractNumbers, extractNumbersFromString, extractNumbersFromString as parseNumbersFromText, extractURLs, extractUpdatedAndNewFields, extractUpdatedFields, getFactors as factorsOf, getFactors as getDivisors, getFactors, fibonacciGenerator, fibonacciGenerator as generateFibonacci, filterArrayOfObjects, findPrimeNumbers, findPrimeNumbers as getPrimeNumbers, flattenArray, flattenObjectDotNotation, flattenObjectKeyValue, formatUnitWithPlural as formatNumberWithPluralUnit, formatUnitWithPlural, formatUnitWithPlural as formatWithPlural, generateAnagrams, generateRandomID, getCharacterDifferences, getClassDetails, getCountryByPhone, getFibonacciSeries as getFibonacci, getFibonacciSeries as getFibonacciNumbers, getFibonacciSeries, getFibonacciSeriesMemo, getFibonacciSeriesMemo as getMemoizedFibonacci, getFibonacciSeriesMemo as getMemoizedFibonacciSeries, getInstanceGetterNames, getInstanceMethodNames, getLastArrayElement, getLevenshteinDistance, getLevenshteinDistance as levenshteinDistance, getNthFibonacci, getNumbersInRange, getRandomFloat as getRandomDecimal, getRandomFloat, getRandomNumber as getRandomInt, getRandomNumber, getStaticGetterNames, getStaticMethodNames, sumNumbers as getSumOfNumbers, sumNumbers, sumNumbers as sumOfNumbers, groupAndAverageByField, groupAndAverageByField as groupAndAvgByField, groupAndSumByField, splitArrayByProperty as groupArrayByProperty, splitArrayByProperty, isDeepEqual, isInvalidOrEmptyArray, isPrime, isPrime as isPrimeNumber, maskString, mergeAndFlattenObjects, mergeObjects, moveArrayElement, normalizeNumber, normalizeString, parseJSON, parseJSON as parseJsonDeep, parseJsonToObject, parseObjectValues, parseObjectValues as parseStringifiedObjectValues, pickFields, pickFields as pickObjectFields, pickObjectFieldsByCondition as pickFieldsByCondition, pickObjectFieldsByCondition, remapFields, remapFields as remapObjectFields, removeDuplicatesFromArray as removeDuplicates, removeDuplicatesFromArray, replaceAllInString, reverseNumber, reverseString, rotateArray, roundNumber, roundNumber as roundToDecimal, roundToNearest as roundNumberToNearestInterval, roundToNearest, roundToNearest as roundToNearestInterval, sanitizeData, shuffleArray, slugifyString, sortAnArray, splitArray, stableStringify, stripJsonEdgeGarbage, sumByField, sumDigits, sumFieldDifference, sumFieldDifference as totalDeltaByField, throttleAction, trimString, truncateString };
|
|
1239
|
+
export { Currency, Finder, Unit, Unit as UnitConverter, convertToRomanNumerals as arabicToRoman, convertToRomanNumerals, convertToRomanNumerals as integerToRoman, convertToRomanNumerals as numberToRoman, convertToRomanNumerals as numericToRoman, convertToRomanNumerals as toRoman, convertToRomanNumerals as toRomanNumeral, averageByField, averageByField as avgByField, banglaToDigit, getAverage as calculateAverage, getAverage, getAverage as getAverageOfNumbers, factorial as calculateFactorial, factorial, factorial as getFactorial, calculateHCF as calculateGCD, calculateHCF, calculateLCM as calculateLCD, calculateLCM, calculatePercentage, capitalizeString, getOrdinal as cardinalToOrdinal, getOrdinal as convertNumberToOrdinal, getOrdinal as convertToOrdinal, getOrdinal, getOrdinal as getOrdinalNumber, getOrdinal as numberToOrdinal, numberToWordsOrdinal as cardinalWordsToOrdinal, numberToWordsOrdinal as convertNumberToWordsOrdinal, numberToWordsOrdinal, clampNumber, cloneObject, naturalSort as compareNaturally, naturalSort as compareSorter, naturalSort, naturalSort as naturalSortForString, computeTextDiff, convertArrayToString, convertArrayToString as joinArrayElements, formatCurrency as convertNumberToCurrency, formatCurrency, numberToWords as convertNumberToWords, numberToWords, convertObjectValues, romanToInteger as convertRomanToArabic, romanToInteger as convertRomanToInteger, romanToInteger as convertRomanToNumeric, romanToInteger as romanToArabic, romanToInteger, romanToInteger as romanToNumeric, convertStringCase, convertToDecimal, convertToDecimal as convertToFixed, wordsToNumber as convertWordToNumber, wordsToNumber as convertWordsToNumber, wordsToNumber as wordToNumber, wordsToNumber, countInstanceMethods, countInstanceMethods as getInstanceMethodsCount, countObjectFields, countStaticMethods, countStaticMethods as getStaticMethodsCount, countWords, countWords as countWordsInString, countWords as wordCount, createOptionsArray, generateQueryParams as createQueryParams, generateQueryParams as formatQueryParams, generateQueryParams, debounceAction, deepParsePrimitives, deepParsePrimitives as parsePrimitivesDeep, definePrototypeMethod, deleteFields, deleteFields as deleteObjectFields, deleteFields as omitFields, deleteFields as omitObjectFields, deleteFields as removeFields, deleteFields as removeObjectFields, digitToBangla, getDuplicates as extractDuplicates, getDuplicates as extractDuplicatesFromArray, getDuplicates, getDuplicates as getDuplicatesFromArray, extractEmails, extractObjectEntries as extractEntries, extractObjectEntries, extractObjectEntries as objectEntries, extractObjectKeys as extractKeys, extractObjectKeys, extractObjectKeysDeep as extractKeysDeep, extractObjectKeysDeep, findMissingElements as extractMissingElements, findMissingElements, findMissingElements as getMissingElements, extractNewFields, extractNumbersFromString as extractNumbers, extractNumbersFromString, extractNumbersFromString as parseNumbersFromText, extractURLs, extractUpdatedAndNewFields, extractUpdatedFields, getFactors as factorsOf, getFactors as getDivisors, getFactors, fibonacciGenerator, fibonacciGenerator as generateFibonacci, filterArrayOfObjects, findPrimeNumbers, findPrimeNumbers as getPrimeNumbers, flattenArray, flattenObjectDotNotation, flattenObjectKeyValue, formatUnitWithPlural as formatNumberWithPluralUnit, formatUnitWithPlural, formatUnitWithPlural as formatWithPlural, generateAnagrams, generateRandomID, getCharacterDifferences, getClassDetails, getCountryByPhone, getFibonacciSeries as getFibonacci, getFibonacciSeries as getFibonacciNumbers, getFibonacciSeries, getFibonacciSeriesMemo, getFibonacciSeriesMemo as getMemoizedFibonacci, getFibonacciSeriesMemo as getMemoizedFibonacciSeries, getInstanceGetterNames, getInstanceMethodNames, getLastArrayElement, getLevenshteinDistance, getLevenshteinDistance as levenshteinDistance, getNthFibonacci, getNumbersInRange, parseQueryString as getQueryStringAsObject, parseQueryString, parseQueryString as queryStringToObject, getRandomFloat as getRandomDecimal, getRandomFloat, getRandomNumber as getRandomInt, getRandomNumber, getStaticGetterNames, getStaticMethodNames, sumNumbers as getSumOfNumbers, sumNumbers, sumNumbers as sumOfNumbers, groupAndAverageByField, groupAndAverageByField as groupAndAvgByField, groupAndSumByField, splitArrayByProperty as groupArrayByProperty, splitArrayByProperty, isDeepEqual, isInvalidOrEmptyArray, isPrime, isPrime as isPrimeNumber, parseQueryStringLiteral as literalQueryStringToObject, parseQueryStringLiteral, maskString, mergeAndFlattenObjects, mergeObjects, moveArrayElement, normalizeNumber, normalizeString, parseJSON, parseJSON as parseJsonDeep, parseJsonToObject, parseObjectValues, parseObjectValues as parseStringifiedObjectValues, pickFields, pickFields as pickObjectFields, pickObjectFieldsByCondition as pickFieldsByCondition, pickObjectFieldsByCondition, remapFields, remapFields as remapObjectFields, removeDuplicatesFromArray as removeDuplicates, removeDuplicatesFromArray, replaceAllInString, reverseNumber, reverseString, rotateArray, roundNumber, roundNumber as roundToDecimal, roundToNearest as roundNumberToNearestInterval, roundToNearest, roundToNearest as roundToNearestInterval, sanitizeData, shuffleArray, slugifyString, sortAnArray, splitArray, stableStringify, stripJsonEdgeGarbage, sumByField, sumDigits, sumFieldDifference, sumFieldDifference as totalDeltaByField, throttleAction, trimString, truncateString };
|
package/dist/index.d.mts
CHANGED
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
import { $n as NumberType, Bn as DecimalOptions, D as NumericDotKey, E as NestedPrimitiveKey, F as SanitizeOptions, I as SanitizedData, In as BnDigitResult, Ln as ConvertOptions, O as ObjectEntry, Q as FlattenPartial, Rn as ConvertedDecimal, Un as FrankFurterCurrency, V as BasicPrimitive, Xn as LocaleCode, Zn as LooseRomanNumeral, a as ConvertObjectOptions, ar as RomanCapital, c as DeepKeys, ci as Tuple, ct as Numeric, g as FlattenDotValue, ir as RangedNumbers, k as Objects, lt as OwnKeys, nr as RandomNumberOptions, nt as Maybe, o as ConvertedObject, p as ExpandAll, pi as Unit, rr as RangeOptions, s as CountryDetails, tr as PercentageOptions, u as DotNotationKey, ut as PartialOrRequired, v as FlattenLeafValue, w as MergeAll, y as GenericObject, z as Any, zn as CurrencyCode } from "./object-DyVg8BFt.mjs";
|
|
18
18
|
import { T as DiffResult, f as AnagramOptions, g as CharDiffResult, j as MaskOptions } from "./string-GQsmDdYa.mjs";
|
|
19
19
|
import { n as convertStringCase, t as capitalizeString } from "./case-CcoD-jFV.mjs";
|
|
20
|
+
import { i as parseQueryStringLiteral, r as parseQueryString, t as generateQueryParams } from "./query-Bi_ofCBp.mjs";
|
|
20
21
|
import { c as OrderOption, l as SortByOption, n as FindOptions, s as OptionsConfig, t as FieldValue, u as SortNature } from "./array-D8VGEDBI.mjs";
|
|
21
22
|
import { C as shuffleArray, S as isInvalidOrEmptyArray, _ as findPrimeNumbers, a as deepParsePrimitives, b as flattenArray, c as getInstanceGetterNames, d as getStaticMethodNames, f as isDeepEqual, g as throttleAction, h as stripJsonEdgeGarbage, i as debounceAction, l as getInstanceMethodNames, m as stableStringify, n as countInstanceMethods, o as definePrototypeMethod, p as parseJSON, r as countStaticMethods, s as getClassDetails, t as convertArrayToString, u as getStaticGetterNames, v as isPrime, x as getLastArrayElement, y as filterArrayOfObjects } from "./index-C9x0f9jU.mjs";
|
|
22
23
|
import { n as trimString, r as truncateString, t as generateRandomID } from "./basics-DY7AX7D4.mjs";
|
|
@@ -1235,4 +1236,4 @@ declare function remapFields<Source extends GenericObject, Target extends Record
|
|
|
1235
1236
|
*/
|
|
1236
1237
|
declare function getCountryByPhone(phone: number | string): CountryDetails[];
|
|
1237
1238
|
//#endregion
|
|
1238
|
-
export { Currency, Finder, Unit, Unit as UnitConverter, convertToRomanNumerals as arabicToRoman, convertToRomanNumerals, convertToRomanNumerals as integerToRoman, convertToRomanNumerals as numberToRoman, convertToRomanNumerals as numericToRoman, convertToRomanNumerals as toRoman, convertToRomanNumerals as toRomanNumeral, averageByField, averageByField as avgByField, banglaToDigit, getAverage as calculateAverage, getAverage, getAverage as getAverageOfNumbers, factorial as calculateFactorial, factorial, factorial as getFactorial, calculateHCF as calculateGCD, calculateHCF, calculateLCM as calculateLCD, calculateLCM, calculatePercentage, capitalizeString, getOrdinal as cardinalToOrdinal, getOrdinal as convertNumberToOrdinal, getOrdinal as convertToOrdinal, getOrdinal, getOrdinal as getOrdinalNumber, getOrdinal as numberToOrdinal, numberToWordsOrdinal as cardinalWordsToOrdinal, numberToWordsOrdinal as convertNumberToWordsOrdinal, numberToWordsOrdinal, clampNumber, cloneObject, naturalSort as compareNaturally, naturalSort as compareSorter, naturalSort, naturalSort as naturalSortForString, computeTextDiff, convertArrayToString, convertArrayToString as joinArrayElements, formatCurrency as convertNumberToCurrency, formatCurrency, numberToWords as convertNumberToWords, numberToWords, convertObjectValues, romanToInteger as convertRomanToArabic, romanToInteger as convertRomanToInteger, romanToInteger as convertRomanToNumeric, romanToInteger as romanToArabic, romanToInteger, romanToInteger as romanToNumeric, convertStringCase, convertToDecimal, convertToDecimal as convertToFixed, wordsToNumber as convertWordToNumber, wordsToNumber as convertWordsToNumber, wordsToNumber as wordToNumber, wordsToNumber, countInstanceMethods, countInstanceMethods as getInstanceMethodsCount, countObjectFields, countStaticMethods, countStaticMethods as getStaticMethodsCount, countWords, countWords as countWordsInString, countWords as wordCount, createOptionsArray, debounceAction, deepParsePrimitives, deepParsePrimitives as parsePrimitivesDeep, definePrototypeMethod, deleteFields, deleteFields as deleteObjectFields, deleteFields as omitFields, deleteFields as omitObjectFields, deleteFields as removeFields, deleteFields as removeObjectFields, digitToBangla, getDuplicates as extractDuplicates, getDuplicates as extractDuplicatesFromArray, getDuplicates, getDuplicates as getDuplicatesFromArray, extractEmails, extractObjectEntries as extractEntries, extractObjectEntries, extractObjectEntries as objectEntries, extractObjectKeys as extractKeys, extractObjectKeys, extractObjectKeysDeep as extractKeysDeep, extractObjectKeysDeep, findMissingElements as extractMissingElements, findMissingElements, findMissingElements as getMissingElements, extractNewFields, extractNumbersFromString as extractNumbers, extractNumbersFromString, extractNumbersFromString as parseNumbersFromText, extractURLs, extractUpdatedAndNewFields, extractUpdatedFields, getFactors as factorsOf, getFactors as getDivisors, getFactors, fibonacciGenerator, fibonacciGenerator as generateFibonacci, filterArrayOfObjects, findPrimeNumbers, findPrimeNumbers as getPrimeNumbers, flattenArray, flattenObjectDotNotation, flattenObjectKeyValue, formatUnitWithPlural as formatNumberWithPluralUnit, formatUnitWithPlural, formatUnitWithPlural as formatWithPlural, generateAnagrams, generateRandomID, getCharacterDifferences, getClassDetails, getCountryByPhone, getFibonacciSeries as getFibonacci, getFibonacciSeries as getFibonacciNumbers, getFibonacciSeries, getFibonacciSeriesMemo, getFibonacciSeriesMemo as getMemoizedFibonacci, getFibonacciSeriesMemo as getMemoizedFibonacciSeries, getInstanceGetterNames, getInstanceMethodNames, getLastArrayElement, getLevenshteinDistance, getLevenshteinDistance as levenshteinDistance, getNthFibonacci, getNumbersInRange, getRandomFloat as getRandomDecimal, getRandomFloat, getRandomNumber as getRandomInt, getRandomNumber, getStaticGetterNames, getStaticMethodNames, sumNumbers as getSumOfNumbers, sumNumbers, sumNumbers as sumOfNumbers, groupAndAverageByField, groupAndAverageByField as groupAndAvgByField, groupAndSumByField, splitArrayByProperty as groupArrayByProperty, splitArrayByProperty, isDeepEqual, isInvalidOrEmptyArray, isPrime, isPrime as isPrimeNumber, maskString, mergeAndFlattenObjects, mergeObjects, moveArrayElement, normalizeNumber, normalizeString, parseJSON, parseJSON as parseJsonDeep, parseJsonToObject, parseObjectValues, parseObjectValues as parseStringifiedObjectValues, pickFields, pickFields as pickObjectFields, pickObjectFieldsByCondition as pickFieldsByCondition, pickObjectFieldsByCondition, remapFields, remapFields as remapObjectFields, removeDuplicatesFromArray as removeDuplicates, removeDuplicatesFromArray, replaceAllInString, reverseNumber, reverseString, rotateArray, roundNumber, roundNumber as roundToDecimal, roundToNearest as roundNumberToNearestInterval, roundToNearest, roundToNearest as roundToNearestInterval, sanitizeData, shuffleArray, slugifyString, sortAnArray, splitArray, stableStringify, stripJsonEdgeGarbage, sumByField, sumDigits, sumFieldDifference, sumFieldDifference as totalDeltaByField, throttleAction, trimString, truncateString };
|
|
1239
|
+
export { Currency, Finder, Unit, Unit as UnitConverter, convertToRomanNumerals as arabicToRoman, convertToRomanNumerals, convertToRomanNumerals as integerToRoman, convertToRomanNumerals as numberToRoman, convertToRomanNumerals as numericToRoman, convertToRomanNumerals as toRoman, convertToRomanNumerals as toRomanNumeral, averageByField, averageByField as avgByField, banglaToDigit, getAverage as calculateAverage, getAverage, getAverage as getAverageOfNumbers, factorial as calculateFactorial, factorial, factorial as getFactorial, calculateHCF as calculateGCD, calculateHCF, calculateLCM as calculateLCD, calculateLCM, calculatePercentage, capitalizeString, getOrdinal as cardinalToOrdinal, getOrdinal as convertNumberToOrdinal, getOrdinal as convertToOrdinal, getOrdinal, getOrdinal as getOrdinalNumber, getOrdinal as numberToOrdinal, numberToWordsOrdinal as cardinalWordsToOrdinal, numberToWordsOrdinal as convertNumberToWordsOrdinal, numberToWordsOrdinal, clampNumber, cloneObject, naturalSort as compareNaturally, naturalSort as compareSorter, naturalSort, naturalSort as naturalSortForString, computeTextDiff, convertArrayToString, convertArrayToString as joinArrayElements, formatCurrency as convertNumberToCurrency, formatCurrency, numberToWords as convertNumberToWords, numberToWords, convertObjectValues, romanToInteger as convertRomanToArabic, romanToInteger as convertRomanToInteger, romanToInteger as convertRomanToNumeric, romanToInteger as romanToArabic, romanToInteger, romanToInteger as romanToNumeric, convertStringCase, convertToDecimal, convertToDecimal as convertToFixed, wordsToNumber as convertWordToNumber, wordsToNumber as convertWordsToNumber, wordsToNumber as wordToNumber, wordsToNumber, countInstanceMethods, countInstanceMethods as getInstanceMethodsCount, countObjectFields, countStaticMethods, countStaticMethods as getStaticMethodsCount, countWords, countWords as countWordsInString, countWords as wordCount, createOptionsArray, generateQueryParams as createQueryParams, generateQueryParams as formatQueryParams, generateQueryParams, debounceAction, deepParsePrimitives, deepParsePrimitives as parsePrimitivesDeep, definePrototypeMethod, deleteFields, deleteFields as deleteObjectFields, deleteFields as omitFields, deleteFields as omitObjectFields, deleteFields as removeFields, deleteFields as removeObjectFields, digitToBangla, getDuplicates as extractDuplicates, getDuplicates as extractDuplicatesFromArray, getDuplicates, getDuplicates as getDuplicatesFromArray, extractEmails, extractObjectEntries as extractEntries, extractObjectEntries, extractObjectEntries as objectEntries, extractObjectKeys as extractKeys, extractObjectKeys, extractObjectKeysDeep as extractKeysDeep, extractObjectKeysDeep, findMissingElements as extractMissingElements, findMissingElements, findMissingElements as getMissingElements, extractNewFields, extractNumbersFromString as extractNumbers, extractNumbersFromString, extractNumbersFromString as parseNumbersFromText, extractURLs, extractUpdatedAndNewFields, extractUpdatedFields, getFactors as factorsOf, getFactors as getDivisors, getFactors, fibonacciGenerator, fibonacciGenerator as generateFibonacci, filterArrayOfObjects, findPrimeNumbers, findPrimeNumbers as getPrimeNumbers, flattenArray, flattenObjectDotNotation, flattenObjectKeyValue, formatUnitWithPlural as formatNumberWithPluralUnit, formatUnitWithPlural, formatUnitWithPlural as formatWithPlural, generateAnagrams, generateRandomID, getCharacterDifferences, getClassDetails, getCountryByPhone, getFibonacciSeries as getFibonacci, getFibonacciSeries as getFibonacciNumbers, getFibonacciSeries, getFibonacciSeriesMemo, getFibonacciSeriesMemo as getMemoizedFibonacci, getFibonacciSeriesMemo as getMemoizedFibonacciSeries, getInstanceGetterNames, getInstanceMethodNames, getLastArrayElement, getLevenshteinDistance, getLevenshteinDistance as levenshteinDistance, getNthFibonacci, getNumbersInRange, parseQueryString as getQueryStringAsObject, parseQueryString, parseQueryString as queryStringToObject, getRandomFloat as getRandomDecimal, getRandomFloat, getRandomNumber as getRandomInt, getRandomNumber, getStaticGetterNames, getStaticMethodNames, sumNumbers as getSumOfNumbers, sumNumbers, sumNumbers as sumOfNumbers, groupAndAverageByField, groupAndAverageByField as groupAndAvgByField, groupAndSumByField, splitArrayByProperty as groupArrayByProperty, splitArrayByProperty, isDeepEqual, isInvalidOrEmptyArray, isPrime, isPrime as isPrimeNumber, parseQueryStringLiteral as literalQueryStringToObject, parseQueryStringLiteral, maskString, mergeAndFlattenObjects, mergeObjects, moveArrayElement, normalizeNumber, normalizeString, parseJSON, parseJSON as parseJsonDeep, parseJsonToObject, parseObjectValues, parseObjectValues as parseStringifiedObjectValues, pickFields, pickFields as pickObjectFields, pickObjectFieldsByCondition as pickFieldsByCondition, pickObjectFieldsByCondition, remapFields, remapFields as remapObjectFields, removeDuplicatesFromArray as removeDuplicates, removeDuplicatesFromArray, replaceAllInString, reverseNumber, reverseString, rotateArray, roundNumber, roundNumber as roundToDecimal, roundToNearest as roundNumberToNearestInterval, roundToNearest, roundToNearest as roundToNearestInterval, sanitizeData, shuffleArray, slugifyString, sortAnArray, splitArray, stableStringify, stripJsonEdgeGarbage, sumByField, sumDigits, sumFieldDifference, sumFieldDifference as totalDeltaByField, throttleAction, trimString, truncateString };
|
package/dist/index.mjs
CHANGED
|
@@ -22,7 +22,7 @@ import { T as isObject, b as isFunction, d as isNumericString, j as isValidArray
|
|
|
22
22
|
import { a as normalizeNumber, i as getRandomFloat, n as formatCurrency, o as roundToNearest, r as getOrdinal, t as clampNumber } from "./utilities-DPscNbS1.mjs";
|
|
23
23
|
import { B as getInstanceMethodNames, F as debounceAction, G as stableStringify, H as getStaticMethodNames, I as deepParsePrimitives, K as stripJsonEdgeGarbage, L as definePrototypeMethod, M as convertArrayToString, N as countInstanceMethods, P as countStaticMethods, R as getClassDetails, U as isDeepEqual, V as getStaticGetterNames, W as parseJSON, it as _resolveNestedKey, n as trimString, nt as sortAnArray, q as throttleAction, r as truncateString, rt as _getNumericProp, t as generateRandomID, tt as naturalSort, z as getInstanceGetterNames } from "./basics-Dald7J6c.mjs";
|
|
24
24
|
import { A as extractObjectEntries, C as filterArrayOfObjects, D as shuffleArray, E as isInvalidOrEmptyArray, M as extractObjectKeysDeep, O as cloneObject, T as getLastArrayElement, _ as areInvalidNumbers, c as extractURLs, d as normalizeString, f as replaceAllInString, g as isPrime, h as findPrimeNumbers, j as extractObjectKeys, k as countObjectFields, l as formatUnitWithPlural, m as slugifyString, p as reverseString, s as extractEmails, u as maskString, v as isEven, w as flattenArray, x as isOdd } from "./guards-D1et4U32.mjs";
|
|
25
|
-
import {
|
|
25
|
+
import { c as extractUpdatedFields, d as mergeAndFlattenObjects, f as mergeObjects, h as sanitizeData, i as parseQueryStringLiteral, l as flattenObjectDotNotation, m as parseObjectValues, o as extractNewFields, p as parseJsonToObject, r as parseQueryString, s as extractUpdatedAndNewFields, t as generateQueryParams, u as flattenObjectKeyValue } from "./query-B4Lrr5Vt.mjs";
|
|
26
26
|
|
|
27
27
|
//#region src/string/anagram.ts
|
|
28
28
|
/** `WeakMap` to cache user provided dictionary array */
|
|
@@ -2171,4 +2171,4 @@ function getCountryByPhone(phone) {
|
|
|
2171
2171
|
}
|
|
2172
2172
|
|
|
2173
2173
|
//#endregion
|
|
2174
|
-
export { Currency, Finder, Unit, Unit as UnitConverter, convertToRomanNumerals as arabicToRoman, convertToRomanNumerals, convertToRomanNumerals as integerToRoman, convertToRomanNumerals as numberToRoman, convertToRomanNumerals as numericToRoman, convertToRomanNumerals as toRoman, convertToRomanNumerals as toRomanNumeral, averageByField, averageByField as avgByField, banglaToDigit, getAverage as calculateAverage, getAverage, getAverage as getAverageOfNumbers, factorial as calculateFactorial, factorial, factorial as getFactorial, calculateHCF as calculateGCD, calculateHCF, calculateLCM as calculateLCD, calculateLCM, calculatePercentage, capitalizeString, getOrdinal as cardinalToOrdinal, getOrdinal as convertNumberToOrdinal, getOrdinal as convertToOrdinal, getOrdinal, getOrdinal as getOrdinalNumber, getOrdinal as numberToOrdinal, numberToWordsOrdinal as cardinalWordsToOrdinal, numberToWordsOrdinal as convertNumberToWordsOrdinal, numberToWordsOrdinal, clampNumber, cloneObject, naturalSort as compareNaturally, naturalSort as compareSorter, naturalSort, naturalSort as naturalSortForString, computeTextDiff, convertArrayToString, convertArrayToString as joinArrayElements, formatCurrency as convertNumberToCurrency, formatCurrency, numberToWords as convertNumberToWords, numberToWords, convertObjectValues, romanToInteger as convertRomanToArabic, romanToInteger as convertRomanToInteger, romanToInteger as convertRomanToNumeric, romanToInteger as romanToArabic, romanToInteger, romanToInteger as romanToNumeric, convertStringCase, convertToDecimal, convertToDecimal as convertToFixed, wordsToNumber as convertWordToNumber, wordsToNumber as convertWordsToNumber, wordsToNumber as wordToNumber, wordsToNumber, countInstanceMethods, countInstanceMethods as getInstanceMethodsCount, countObjectFields, countStaticMethods, countStaticMethods as getStaticMethodsCount, countWords, countWords as countWordsInString, countWords as wordCount, createOptionsArray, debounceAction, deepParsePrimitives, deepParsePrimitives as parsePrimitivesDeep, definePrototypeMethod, deleteFields, deleteFields as deleteObjectFields, deleteFields as omitFields, deleteFields as omitObjectFields, deleteFields as removeFields, deleteFields as removeObjectFields, digitToBangla, getDuplicates as extractDuplicates, getDuplicates as extractDuplicatesFromArray, getDuplicates, getDuplicates as getDuplicatesFromArray, extractEmails, extractObjectEntries as extractEntries, extractObjectEntries, extractObjectEntries as objectEntries, extractObjectKeys as extractKeys, extractObjectKeys, extractObjectKeysDeep as extractKeysDeep, extractObjectKeysDeep, findMissingElements as extractMissingElements, findMissingElements, findMissingElements as getMissingElements, extractNewFields, extractNumbersFromString as extractNumbers, extractNumbersFromString, extractNumbersFromString as parseNumbersFromText, extractURLs, extractUpdatedAndNewFields, extractUpdatedFields, getFactors as factorsOf, getFactors as getDivisors, getFactors, fibonacciGenerator, fibonacciGenerator as generateFibonacci, filterArrayOfObjects, findPrimeNumbers, findPrimeNumbers as getPrimeNumbers, flattenArray, flattenObjectDotNotation, flattenObjectKeyValue, formatUnitWithPlural as formatNumberWithPluralUnit, formatUnitWithPlural, formatUnitWithPlural as formatWithPlural, generateAnagrams, generateRandomID, getCharacterDifferences, getClassDetails, getCountryByPhone, getFibonacciSeries as getFibonacci, getFibonacciSeries as getFibonacciNumbers, getFibonacciSeries, getFibonacciSeriesMemo, getFibonacciSeriesMemo as getMemoizedFibonacci, getFibonacciSeriesMemo as getMemoizedFibonacciSeries, getInstanceGetterNames, getInstanceMethodNames, getLastArrayElement, getLevenshteinDistance, getLevenshteinDistance as levenshteinDistance, getNthFibonacci, getNumbersInRange, getRandomFloat as getRandomDecimal, getRandomFloat, getRandomNumber as getRandomInt, getRandomNumber, getStaticGetterNames, getStaticMethodNames, sumNumbers as getSumOfNumbers, sumNumbers, sumNumbers as sumOfNumbers, groupAndAverageByField, groupAndAverageByField as groupAndAvgByField, groupAndSumByField, splitArrayByProperty as groupArrayByProperty, splitArrayByProperty, isDeepEqual, isInvalidOrEmptyArray, isPrime, isPrime as isPrimeNumber, maskString, mergeAndFlattenObjects, mergeObjects, moveArrayElement, normalizeNumber, normalizeString, parseJSON, parseJSON as parseJsonDeep, parseJsonToObject, parseObjectValues, parseObjectValues as parseStringifiedObjectValues, pickFields, pickFields as pickObjectFields, pickObjectFieldsByCondition as pickFieldsByCondition, pickObjectFieldsByCondition, remapFields, remapFields as remapObjectFields, removeDuplicatesFromArray as removeDuplicates, removeDuplicatesFromArray, replaceAllInString, reverseNumber, reverseString, rotateArray, roundNumber, roundNumber as roundToDecimal, roundToNearest as roundNumberToNearestInterval, roundToNearest, roundToNearest as roundToNearestInterval, sanitizeData, shuffleArray, slugifyString, sortAnArray, splitArray, stableStringify, stripJsonEdgeGarbage, sumByField, sumDigits, sumFieldDifference, sumFieldDifference as totalDeltaByField, throttleAction, trimString, truncateString };
|
|
2174
|
+
export { Currency, Finder, Unit, Unit as UnitConverter, convertToRomanNumerals as arabicToRoman, convertToRomanNumerals, convertToRomanNumerals as integerToRoman, convertToRomanNumerals as numberToRoman, convertToRomanNumerals as numericToRoman, convertToRomanNumerals as toRoman, convertToRomanNumerals as toRomanNumeral, averageByField, averageByField as avgByField, banglaToDigit, getAverage as calculateAverage, getAverage, getAverage as getAverageOfNumbers, factorial as calculateFactorial, factorial, factorial as getFactorial, calculateHCF as calculateGCD, calculateHCF, calculateLCM as calculateLCD, calculateLCM, calculatePercentage, capitalizeString, getOrdinal as cardinalToOrdinal, getOrdinal as convertNumberToOrdinal, getOrdinal as convertToOrdinal, getOrdinal, getOrdinal as getOrdinalNumber, getOrdinal as numberToOrdinal, numberToWordsOrdinal as cardinalWordsToOrdinal, numberToWordsOrdinal as convertNumberToWordsOrdinal, numberToWordsOrdinal, clampNumber, cloneObject, naturalSort as compareNaturally, naturalSort as compareSorter, naturalSort, naturalSort as naturalSortForString, computeTextDiff, convertArrayToString, convertArrayToString as joinArrayElements, formatCurrency as convertNumberToCurrency, formatCurrency, numberToWords as convertNumberToWords, numberToWords, convertObjectValues, romanToInteger as convertRomanToArabic, romanToInteger as convertRomanToInteger, romanToInteger as convertRomanToNumeric, romanToInteger as romanToArabic, romanToInteger, romanToInteger as romanToNumeric, convertStringCase, convertToDecimal, convertToDecimal as convertToFixed, wordsToNumber as convertWordToNumber, wordsToNumber as convertWordsToNumber, wordsToNumber as wordToNumber, wordsToNumber, countInstanceMethods, countInstanceMethods as getInstanceMethodsCount, countObjectFields, countStaticMethods, countStaticMethods as getStaticMethodsCount, countWords, countWords as countWordsInString, countWords as wordCount, createOptionsArray, generateQueryParams as createQueryParams, generateQueryParams as formatQueryParams, generateQueryParams, debounceAction, deepParsePrimitives, deepParsePrimitives as parsePrimitivesDeep, definePrototypeMethod, deleteFields, deleteFields as deleteObjectFields, deleteFields as omitFields, deleteFields as omitObjectFields, deleteFields as removeFields, deleteFields as removeObjectFields, digitToBangla, getDuplicates as extractDuplicates, getDuplicates as extractDuplicatesFromArray, getDuplicates, getDuplicates as getDuplicatesFromArray, extractEmails, extractObjectEntries as extractEntries, extractObjectEntries, extractObjectEntries as objectEntries, extractObjectKeys as extractKeys, extractObjectKeys, extractObjectKeysDeep as extractKeysDeep, extractObjectKeysDeep, findMissingElements as extractMissingElements, findMissingElements, findMissingElements as getMissingElements, extractNewFields, extractNumbersFromString as extractNumbers, extractNumbersFromString, extractNumbersFromString as parseNumbersFromText, extractURLs, extractUpdatedAndNewFields, extractUpdatedFields, getFactors as factorsOf, getFactors as getDivisors, getFactors, fibonacciGenerator, fibonacciGenerator as generateFibonacci, filterArrayOfObjects, findPrimeNumbers, findPrimeNumbers as getPrimeNumbers, flattenArray, flattenObjectDotNotation, flattenObjectKeyValue, formatUnitWithPlural as formatNumberWithPluralUnit, formatUnitWithPlural, formatUnitWithPlural as formatWithPlural, generateAnagrams, generateRandomID, getCharacterDifferences, getClassDetails, getCountryByPhone, getFibonacciSeries as getFibonacci, getFibonacciSeries as getFibonacciNumbers, getFibonacciSeries, getFibonacciSeriesMemo, getFibonacciSeriesMemo as getMemoizedFibonacci, getFibonacciSeriesMemo as getMemoizedFibonacciSeries, getInstanceGetterNames, getInstanceMethodNames, getLastArrayElement, getLevenshteinDistance, getLevenshteinDistance as levenshteinDistance, getNthFibonacci, getNumbersInRange, parseQueryString as getQueryStringAsObject, parseQueryString, parseQueryString as queryStringToObject, getRandomFloat as getRandomDecimal, getRandomFloat, getRandomNumber as getRandomInt, getRandomNumber, getStaticGetterNames, getStaticMethodNames, sumNumbers as getSumOfNumbers, sumNumbers, sumNumbers as sumOfNumbers, groupAndAverageByField, groupAndAverageByField as groupAndAvgByField, groupAndSumByField, splitArrayByProperty as groupArrayByProperty, splitArrayByProperty, isDeepEqual, isInvalidOrEmptyArray, isPrime, isPrime as isPrimeNumber, parseQueryStringLiteral as literalQueryStringToObject, parseQueryStringLiteral, maskString, mergeAndFlattenObjects, mergeObjects, moveArrayElement, normalizeNumber, normalizeString, parseJSON, parseJSON as parseJsonDeep, parseJsonToObject, parseObjectValues, parseObjectValues as parseStringifiedObjectValues, pickFields, pickFields as pickObjectFields, pickObjectFieldsByCondition as pickFieldsByCondition, pickObjectFieldsByCondition, remapFields, remapFields as remapObjectFields, removeDuplicatesFromArray as removeDuplicates, removeDuplicatesFromArray, replaceAllInString, reverseNumber, reverseString, rotateArray, roundNumber, roundNumber as roundToDecimal, roundToNearest as roundNumberToNearestInterval, roundToNearest, roundToNearest as roundToNearestInterval, sanitizeData, shuffleArray, slugifyString, sortAnArray, splitArray, stableStringify, stripJsonEdgeGarbage, sumByField, sumDigits, sumFieldDifference, sumFieldDifference as totalDeltaByField, throttleAction, trimString, truncateString };
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
import { d as isString } from "./primitives-Djsevc69.mjs";
|
|
18
18
|
import { E as isObjectWithKeys, T as isObject, g as isArrayOfType, j as isValidArray, v as isEmptyObject, w as isNotEmptyObject } from "./specials-Hq5Ncd6y.mjs";
|
|
19
|
-
import { J as isDateLike, U as isDeepEqual, n as trimString } from "./basics-Dald7J6c.mjs";
|
|
19
|
+
import { I as deepParsePrimitives, J as isDateLike, U as isDeepEqual, n as trimString } from "./basics-Dald7J6c.mjs";
|
|
20
20
|
|
|
21
21
|
//#region src/form/guards.ts
|
|
22
22
|
/**
|
|
@@ -407,4 +407,89 @@ const parseJsonToObject = (value, parsePrimitives = true) => {
|
|
|
407
407
|
};
|
|
408
408
|
|
|
409
409
|
//#endregion
|
|
410
|
-
|
|
410
|
+
//#region src/dom/query.ts
|
|
411
|
+
/**
|
|
412
|
+
* * Utility to generate query parameters from an object.
|
|
413
|
+
*
|
|
414
|
+
* @param params - Object containing query parameters.
|
|
415
|
+
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
416
|
+
*
|
|
417
|
+
* @example
|
|
418
|
+
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
419
|
+
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
420
|
+
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
421
|
+
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
422
|
+
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
423
|
+
*/
|
|
424
|
+
function generateQueryParams(params = {}) {
|
|
425
|
+
const flattenedParams = flattenObjectKeyValue(params);
|
|
426
|
+
const queryParams = Object.entries(flattenedParams)?.filter(([_, value]) => value != null && !(isString(value) && value?.trim() === ""))?.flatMap(([key, value]) => Array.isArray(value) ? value?.filter((v) => v != null && !(isString(v) && v.trim() === ""))?.map((v) => `${encodeURIComponent(key)}=${encodeURIComponent(String(v))}`) : `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`).join("&");
|
|
427
|
+
return queryParams ? `?${queryParams}` : "";
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
431
|
+
*
|
|
432
|
+
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
433
|
+
*
|
|
434
|
+
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
435
|
+
*/
|
|
436
|
+
function getQueryParams() {
|
|
437
|
+
return Object.fromEntries(new URLSearchParams(window?.location?.search));
|
|
438
|
+
}
|
|
439
|
+
/**
|
|
440
|
+
* * Update query params in the browser URL with given key and value.
|
|
441
|
+
* @param key Key for the query to update.
|
|
442
|
+
* @param value Value to updated against the given key.
|
|
443
|
+
*/
|
|
444
|
+
function updateQueryParam(key, value) {
|
|
445
|
+
const url = new URL(window.location.href);
|
|
446
|
+
url.searchParams.set(key, value);
|
|
447
|
+
window.history.replaceState({}, "", url?.toString());
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
451
|
+
* Supports multiple values for the same key by returning arrays.
|
|
452
|
+
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
453
|
+
*
|
|
454
|
+
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
455
|
+
*
|
|
456
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
457
|
+
*
|
|
458
|
+
* @param query - The query string to parse.
|
|
459
|
+
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
460
|
+
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
461
|
+
*/
|
|
462
|
+
function parseQueryString(query, parsePrimitives = true) {
|
|
463
|
+
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
464
|
+
const entries = {};
|
|
465
|
+
for (const [key, value] of params.entries()) if (key in entries) {
|
|
466
|
+
const current = entries[key];
|
|
467
|
+
const array = Array.isArray(current) ? [...current, value] : [current, value];
|
|
468
|
+
entries[key] = parsePrimitives ? deepParsePrimitives(array) : array;
|
|
469
|
+
} else entries[key] = value;
|
|
470
|
+
return parsePrimitives ? parseObjectValues(entries) : entries;
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
474
|
+
* Supports multiple values for the same key by returning arrays.
|
|
475
|
+
* It returns properly typed object.
|
|
476
|
+
*
|
|
477
|
+
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
478
|
+
*
|
|
479
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
480
|
+
*
|
|
481
|
+
* @param query - The literal query string to parse.
|
|
482
|
+
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
483
|
+
*/
|
|
484
|
+
function parseQueryStringLiteral(query) {
|
|
485
|
+
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
486
|
+
const entries = {};
|
|
487
|
+
for (const [key, value] of params.entries()) if (key in entries) {
|
|
488
|
+
const current = entries[key];
|
|
489
|
+
entries[key] = Array.isArray(current) ? [...current, value] : [current, value];
|
|
490
|
+
} else entries[key] = value;
|
|
491
|
+
return entries;
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
//#endregion
|
|
495
|
+
export { isValidFormData as C, isOriginFileObj as S, isCustomFileArray as _, updateQueryParam as a, isFileOrBlob as b, extractUpdatedFields as c, mergeAndFlattenObjects as d, mergeObjects as f, isCustomFile as g, sanitizeData as h, parseQueryStringLiteral as i, flattenObjectDotNotation as l, parseObjectValues as m, getQueryParams as n, extractNewFields as o, parseJsonToObject as p, parseQueryString as r, extractUpdatedAndNewFields as s, generateQueryParams as t, flattenObjectKeyValue as u, isFileArray as v, isFileUpload as x, isFileList as y };
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 - present Nazmul Hassan
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { M as ParsedQueryGeneric, N as QueryObject, j as ParsedQuery } from "./object-DyVg8BFt.cjs";
|
|
18
|
+
import { F as QueryString } from "./string-EMT7czsU.cjs";
|
|
19
|
+
|
|
20
|
+
//#region src/dom/query.d.ts
|
|
21
|
+
/**
|
|
22
|
+
* * Utility to generate query parameters from an object.
|
|
23
|
+
*
|
|
24
|
+
* @param params - Object containing query parameters.
|
|
25
|
+
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
29
|
+
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
30
|
+
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
31
|
+
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
32
|
+
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
33
|
+
*/
|
|
34
|
+
declare function generateQueryParams<T extends QueryObject>(params?: T): QueryString;
|
|
35
|
+
/**
|
|
36
|
+
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
37
|
+
*
|
|
38
|
+
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
39
|
+
*
|
|
40
|
+
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
41
|
+
*/
|
|
42
|
+
declare function getQueryParams<QParams extends Record<string, string>>(): QParams;
|
|
43
|
+
/**
|
|
44
|
+
* * Update query params in the browser URL with given key and value.
|
|
45
|
+
* @param key Key for the query to update.
|
|
46
|
+
* @param value Value to updated against the given key.
|
|
47
|
+
*/
|
|
48
|
+
declare function updateQueryParam(key: string, value: string): void;
|
|
49
|
+
/**
|
|
50
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
51
|
+
* Supports multiple values for the same key by returning arrays.
|
|
52
|
+
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
53
|
+
*
|
|
54
|
+
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
55
|
+
*
|
|
56
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
57
|
+
*
|
|
58
|
+
* @param query - The query string to parse.
|
|
59
|
+
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
60
|
+
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
61
|
+
*/
|
|
62
|
+
declare function parseQueryString<QParams extends ParsedQueryGeneric>(query: string, parsePrimitives?: boolean): QParams;
|
|
63
|
+
/**
|
|
64
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
65
|
+
* Supports multiple values for the same key by returning arrays.
|
|
66
|
+
* It returns properly typed object.
|
|
67
|
+
*
|
|
68
|
+
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
69
|
+
*
|
|
70
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
71
|
+
*
|
|
72
|
+
* @param query - The literal query string to parse.
|
|
73
|
+
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
74
|
+
*/
|
|
75
|
+
declare function parseQueryStringLiteral<Q extends string>(query: Q): ParsedQuery<Q>;
|
|
76
|
+
//#endregion
|
|
77
|
+
export { updateQueryParam as a, parseQueryStringLiteral as i, getQueryParams as n, parseQueryString as r, generateQueryParams as t };
|
|
@@ -406,6 +406,91 @@ const parseJsonToObject = (value, parsePrimitives = true) => {
|
|
|
406
406
|
}
|
|
407
407
|
};
|
|
408
408
|
|
|
409
|
+
//#endregion
|
|
410
|
+
//#region src/dom/query.ts
|
|
411
|
+
/**
|
|
412
|
+
* * Utility to generate query parameters from an object.
|
|
413
|
+
*
|
|
414
|
+
* @param params - Object containing query parameters.
|
|
415
|
+
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
416
|
+
*
|
|
417
|
+
* @example
|
|
418
|
+
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
419
|
+
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
420
|
+
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
421
|
+
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
422
|
+
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
423
|
+
*/
|
|
424
|
+
function generateQueryParams(params = {}) {
|
|
425
|
+
const flattenedParams = flattenObjectKeyValue(params);
|
|
426
|
+
const queryParams = Object.entries(flattenedParams)?.filter(([_, value]) => value != null && !(require_primitives.isString(value) && value?.trim() === ""))?.flatMap(([key, value]) => Array.isArray(value) ? value?.filter((v) => v != null && !(require_primitives.isString(v) && v.trim() === ""))?.map((v) => `${encodeURIComponent(key)}=${encodeURIComponent(String(v))}`) : `${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`).join("&");
|
|
427
|
+
return queryParams ? `?${queryParams}` : "";
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
431
|
+
*
|
|
432
|
+
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
433
|
+
*
|
|
434
|
+
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
435
|
+
*/
|
|
436
|
+
function getQueryParams() {
|
|
437
|
+
return Object.fromEntries(new URLSearchParams(window?.location?.search));
|
|
438
|
+
}
|
|
439
|
+
/**
|
|
440
|
+
* * Update query params in the browser URL with given key and value.
|
|
441
|
+
* @param key Key for the query to update.
|
|
442
|
+
* @param value Value to updated against the given key.
|
|
443
|
+
*/
|
|
444
|
+
function updateQueryParam(key, value) {
|
|
445
|
+
const url = new URL(window.location.href);
|
|
446
|
+
url.searchParams.set(key, value);
|
|
447
|
+
window.history.replaceState({}, "", url?.toString());
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
451
|
+
* Supports multiple values for the same key by returning arrays.
|
|
452
|
+
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
453
|
+
*
|
|
454
|
+
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
455
|
+
*
|
|
456
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
457
|
+
*
|
|
458
|
+
* @param query - The query string to parse.
|
|
459
|
+
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
460
|
+
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
461
|
+
*/
|
|
462
|
+
function parseQueryString(query, parsePrimitives = true) {
|
|
463
|
+
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
464
|
+
const entries = {};
|
|
465
|
+
for (const [key, value] of params.entries()) if (key in entries) {
|
|
466
|
+
const current = entries[key];
|
|
467
|
+
const array = Array.isArray(current) ? [...current, value] : [current, value];
|
|
468
|
+
entries[key] = parsePrimitives ? require_basics.deepParsePrimitives(array) : array;
|
|
469
|
+
} else entries[key] = value;
|
|
470
|
+
return parsePrimitives ? parseObjectValues(entries) : entries;
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
474
|
+
* Supports multiple values for the same key by returning arrays.
|
|
475
|
+
* It returns properly typed object.
|
|
476
|
+
*
|
|
477
|
+
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
478
|
+
*
|
|
479
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
480
|
+
*
|
|
481
|
+
* @param query - The literal query string to parse.
|
|
482
|
+
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
483
|
+
*/
|
|
484
|
+
function parseQueryStringLiteral(query) {
|
|
485
|
+
const params = new URLSearchParams(query.startsWith("?") ? query.slice(1) : query);
|
|
486
|
+
const entries = {};
|
|
487
|
+
for (const [key, value] of params.entries()) if (key in entries) {
|
|
488
|
+
const current = entries[key];
|
|
489
|
+
entries[key] = Array.isArray(current) ? [...current, value] : [current, value];
|
|
490
|
+
} else entries[key] = value;
|
|
491
|
+
return entries;
|
|
492
|
+
}
|
|
493
|
+
|
|
409
494
|
//#endregion
|
|
410
495
|
Object.defineProperty(exports, 'extractNewFields', {
|
|
411
496
|
enumerable: true,
|
|
@@ -437,6 +522,18 @@ Object.defineProperty(exports, 'flattenObjectKeyValue', {
|
|
|
437
522
|
return flattenObjectKeyValue;
|
|
438
523
|
}
|
|
439
524
|
});
|
|
525
|
+
Object.defineProperty(exports, 'generateQueryParams', {
|
|
526
|
+
enumerable: true,
|
|
527
|
+
get: function () {
|
|
528
|
+
return generateQueryParams;
|
|
529
|
+
}
|
|
530
|
+
});
|
|
531
|
+
Object.defineProperty(exports, 'getQueryParams', {
|
|
532
|
+
enumerable: true,
|
|
533
|
+
get: function () {
|
|
534
|
+
return getQueryParams;
|
|
535
|
+
}
|
|
536
|
+
});
|
|
440
537
|
Object.defineProperty(exports, 'isCustomFile', {
|
|
441
538
|
enumerable: true,
|
|
442
539
|
get: function () {
|
|
@@ -509,9 +606,27 @@ Object.defineProperty(exports, 'parseObjectValues', {
|
|
|
509
606
|
return parseObjectValues;
|
|
510
607
|
}
|
|
511
608
|
});
|
|
609
|
+
Object.defineProperty(exports, 'parseQueryString', {
|
|
610
|
+
enumerable: true,
|
|
611
|
+
get: function () {
|
|
612
|
+
return parseQueryString;
|
|
613
|
+
}
|
|
614
|
+
});
|
|
615
|
+
Object.defineProperty(exports, 'parseQueryStringLiteral', {
|
|
616
|
+
enumerable: true,
|
|
617
|
+
get: function () {
|
|
618
|
+
return parseQueryStringLiteral;
|
|
619
|
+
}
|
|
620
|
+
});
|
|
512
621
|
Object.defineProperty(exports, 'sanitizeData', {
|
|
513
622
|
enumerable: true,
|
|
514
623
|
get: function () {
|
|
515
624
|
return sanitizeData;
|
|
516
625
|
}
|
|
626
|
+
});
|
|
627
|
+
Object.defineProperty(exports, 'updateQueryParam', {
|
|
628
|
+
enumerable: true,
|
|
629
|
+
get: function () {
|
|
630
|
+
return updateQueryParam;
|
|
631
|
+
}
|
|
517
632
|
});
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright 2026 - present Nazmul Hassan
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { M as ParsedQueryGeneric, N as QueryObject, j as ParsedQuery } from "./object-DyVg8BFt.mjs";
|
|
18
|
+
import { F as QueryString } from "./string-GQsmDdYa.mjs";
|
|
19
|
+
|
|
20
|
+
//#region src/dom/query.d.ts
|
|
21
|
+
/**
|
|
22
|
+
* * Utility to generate query parameters from an object.
|
|
23
|
+
*
|
|
24
|
+
* @param params - Object containing query parameters.
|
|
25
|
+
* @returns A query string as a URL-encoded string, e.g., `?key1=value1&key2=value2`.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* generateQueryParams({ key1: 'value1', key2: 42 }); // "?key1=value1&key2=42"
|
|
29
|
+
* generateQueryParams({ key1: ['value1', 'value2'], key2: 42 }); // "?key1=value1&key1=value2&key2=42"
|
|
30
|
+
* generateQueryParams({ key1: '', key2: null }); // ""
|
|
31
|
+
* generateQueryParams({ key1: true, key2: false }); // "?key1=true&key2=false"
|
|
32
|
+
* generateQueryParams({ filters: { category: 'laptop', price: 1000 } }); // "?category=laptop&price=1000"
|
|
33
|
+
*/
|
|
34
|
+
declare function generateQueryParams<T extends QueryObject>(params?: T): QueryString;
|
|
35
|
+
/**
|
|
36
|
+
* * Get query params as standard `JavaScript` Object `Record<string, string>`. You can define the type by passing a type argument.
|
|
37
|
+
*
|
|
38
|
+
* - **Note:** *Extracts query parameters from the current URL (window.location.search).*
|
|
39
|
+
*
|
|
40
|
+
* @returns Query string as key-value paired object. `Record<string, string>`.
|
|
41
|
+
*/
|
|
42
|
+
declare function getQueryParams<QParams extends Record<string, string>>(): QParams;
|
|
43
|
+
/**
|
|
44
|
+
* * Update query params in the browser URL with given key and value.
|
|
45
|
+
* @param key Key for the query to update.
|
|
46
|
+
* @param value Value to updated against the given key.
|
|
47
|
+
*/
|
|
48
|
+
declare function updateQueryParam(key: string, value: string): void;
|
|
49
|
+
/**
|
|
50
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
51
|
+
* Supports multiple values for the same key by returning arrays.
|
|
52
|
+
* Optionally parses primitive string values into actual types (e.g., "1" → 1, "true" → true).
|
|
53
|
+
*
|
|
54
|
+
* @remarks This utility is designed to parse generic string, for literal use, try {@link parseQueryStringLiteral}.
|
|
55
|
+
*
|
|
56
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
57
|
+
*
|
|
58
|
+
* @param query - The query string to parse.
|
|
59
|
+
* @param parsePrimitives - Whether to convert stringified primitives into real values (default: true).
|
|
60
|
+
* @returns An object where keys are strings and values can be string, array, number, boolean, or null/undefined.
|
|
61
|
+
*/
|
|
62
|
+
declare function parseQueryString<QParams extends ParsedQueryGeneric>(query: string, parsePrimitives?: boolean): QParams;
|
|
63
|
+
/**
|
|
64
|
+
* Parses a query string (with optional `?` prefix) into an object.
|
|
65
|
+
* Supports multiple values for the same key by returning arrays.
|
|
66
|
+
* It returns properly typed object.
|
|
67
|
+
*
|
|
68
|
+
* @remarks This utility is designed to parse literal string, for generic use, try {@link parseQueryString}.
|
|
69
|
+
*
|
|
70
|
+
* - **Note:** *This function does **not** access or depend on `current URL` a.k.a `window.location.search`.*
|
|
71
|
+
*
|
|
72
|
+
* @param query - The literal query string to parse.
|
|
73
|
+
* @returns An object where keys are strings and values can be string, array, or null/undefined.
|
|
74
|
+
*/
|
|
75
|
+
declare function parseQueryStringLiteral<Q extends string>(query: Q): ParsedQuery<Q>;
|
|
76
|
+
//#endregion
|
|
77
|
+
export { updateQueryParam as a, parseQueryStringLiteral as i, getQueryParams as n, parseQueryString as r, generateQueryParams as t };
|
package/package.json
CHANGED