@alextheman/utility 3.3.1 → 3.4.0
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/index.cjs +28 -0
- package/dist/index.d.cts +7 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.js +27 -1
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -299,6 +299,32 @@ function isMonthlyMultiple(firstDate, secondDate) {
|
|
|
299
299
|
}
|
|
300
300
|
var isMonthlyMultiple_default = isMonthlyMultiple;
|
|
301
301
|
|
|
302
|
+
//#endregion
|
|
303
|
+
//#region src/functions/deepCopy.ts
|
|
304
|
+
function callDeepCopy(input) {
|
|
305
|
+
return typeof input === "object" && input !== null ? deepCopy(input) : input;
|
|
306
|
+
}
|
|
307
|
+
function deepCopy(object) {
|
|
308
|
+
if (Array.isArray(object)) return object.map((item) => {
|
|
309
|
+
return callDeepCopy(item);
|
|
310
|
+
});
|
|
311
|
+
const clonedObject = { ...object };
|
|
312
|
+
for (const key in clonedObject) {
|
|
313
|
+
const value = clonedObject[key];
|
|
314
|
+
clonedObject[key] = callDeepCopy(value);
|
|
315
|
+
}
|
|
316
|
+
return clonedObject;
|
|
317
|
+
}
|
|
318
|
+
var deepCopy_default = deepCopy;
|
|
319
|
+
|
|
320
|
+
//#endregion
|
|
321
|
+
//#region src/functions/deepFreeze.ts
|
|
322
|
+
function deepFreeze(object) {
|
|
323
|
+
for (const value of Object.values(object)) if (value && typeof value === "object") deepFreeze(value);
|
|
324
|
+
return Object.freeze(object);
|
|
325
|
+
}
|
|
326
|
+
var deepFreeze_default = deepFreeze;
|
|
327
|
+
|
|
302
328
|
//#endregion
|
|
303
329
|
//#region src/functions/getRecordKeys.ts
|
|
304
330
|
function getRecordKeys(record) {
|
|
@@ -627,6 +653,8 @@ exports.camelToKebab = camelToKebab_default;
|
|
|
627
653
|
exports.convertFileToBase64 = convertFileToBase64_default;
|
|
628
654
|
exports.createFormData = createFormData_default;
|
|
629
655
|
exports.createTemplateStringsArray = createTemplateStringsArray_default;
|
|
656
|
+
exports.deepCopy = deepCopy_default;
|
|
657
|
+
exports.deepFreeze = deepFreeze_default;
|
|
630
658
|
exports.fillArray = fillArray_default;
|
|
631
659
|
exports.formatDateAndTime = formatDateAndTime_default;
|
|
632
660
|
exports.getRandomNumber = getRandomNumber_default;
|
package/dist/index.d.cts
CHANGED
|
@@ -121,6 +121,12 @@ declare function isMonthlyMultiple(firstDate: Date, secondDate: Date): boolean;
|
|
|
121
121
|
//#region src/functions/date/isSameDate.d.ts
|
|
122
122
|
declare function isSameDate(firstDate: Date, secondDate: Date): boolean;
|
|
123
123
|
//#endregion
|
|
124
|
+
//#region src/functions/deepCopy.d.ts
|
|
125
|
+
declare function deepCopy<T extends object>(object: T): T;
|
|
126
|
+
//#endregion
|
|
127
|
+
//#region src/functions/deepFreeze.d.ts
|
|
128
|
+
declare function deepFreeze<T extends object>(object: T): Readonly<T>;
|
|
129
|
+
//#endregion
|
|
124
130
|
//#region src/functions/getRandomNumber.d.ts
|
|
125
131
|
declare function getRandomNumber(lowerBound: number, upperBound: number): number;
|
|
126
132
|
//#endregion
|
|
@@ -204,4 +210,4 @@ declare function truncate(stringToTruncate: string, maxLength?: number): string;
|
|
|
204
210
|
//#region src/functions/wait.d.ts
|
|
205
211
|
declare function wait(seconds: number): Promise<void>;
|
|
206
212
|
//#endregion
|
|
207
|
-
export { APIError, CreateFormDataOptions, CreateFormDataOptionsNullableResolution, CreateFormDataOptionsUndefinedOrNullResolution, DataError, DisallowUndefined, Email, Env, FormDataArrayResolutionStrategy, FormDataNullableResolutionStrategy, HTTPErrorCode, IgnoreCase, KebabToCamelOptions, NAMESPACE_EXPORT_REGEX, NonUndefined, NormaliseIndentsFunction, NormaliseIndentsOptions, NormalizeIndentsFunction, NormalizeIndentsOptions, OptionalOnCondition, RecordKey, RemoveIndentsFunction, RemoveIndentsOptions, StringListToArrayOptions, UUID, addDaysToDate, appendSemicolon, camelToKebab, convertFileToBase64, createFormData, createTemplateStringsArray, fillArray, formatDateAndTime, getRandomNumber, getRecordKeys, httpErrorCodeLookup, interpolate, interpolateObjects, isAnniversary, isLeapYear, isMonthlyMultiple, isOrdered, isSameDate, kebabToCamel, normaliseImportPath, normaliseIndents, normalizeImportPath, normalizeIndents, omitProperties, paralleliseArrays, parseBoolean, parseEmail, parseEnv, parseFormData, parseIntStrict, parseUUID, parseZodSchema, randomiseArray, range, removeDuplicates, removeIndents, stringListToArray, stringToBoolean, truncate, wait };
|
|
213
|
+
export { APIError, CreateFormDataOptions, CreateFormDataOptionsNullableResolution, CreateFormDataOptionsUndefinedOrNullResolution, DataError, DisallowUndefined, Email, Env, FormDataArrayResolutionStrategy, FormDataNullableResolutionStrategy, HTTPErrorCode, IgnoreCase, KebabToCamelOptions, NAMESPACE_EXPORT_REGEX, NonUndefined, NormaliseIndentsFunction, NormaliseIndentsOptions, NormalizeIndentsFunction, NormalizeIndentsOptions, OptionalOnCondition, RecordKey, RemoveIndentsFunction, RemoveIndentsOptions, StringListToArrayOptions, UUID, addDaysToDate, appendSemicolon, camelToKebab, convertFileToBase64, createFormData, createTemplateStringsArray, deepCopy, deepFreeze, fillArray, formatDateAndTime, getRandomNumber, getRecordKeys, httpErrorCodeLookup, interpolate, interpolateObjects, isAnniversary, isLeapYear, isMonthlyMultiple, isOrdered, isSameDate, kebabToCamel, normaliseImportPath, normaliseIndents, normalizeImportPath, normalizeIndents, omitProperties, paralleliseArrays, parseBoolean, parseEmail, parseEnv, parseFormData, parseIntStrict, parseUUID, parseZodSchema, randomiseArray, range, removeDuplicates, removeIndents, stringListToArray, stringToBoolean, truncate, wait };
|
package/dist/index.d.ts
CHANGED
|
@@ -121,6 +121,12 @@ declare function isMonthlyMultiple(firstDate: Date, secondDate: Date): boolean;
|
|
|
121
121
|
//#region src/functions/date/isSameDate.d.ts
|
|
122
122
|
declare function isSameDate(firstDate: Date, secondDate: Date): boolean;
|
|
123
123
|
//#endregion
|
|
124
|
+
//#region src/functions/deepCopy.d.ts
|
|
125
|
+
declare function deepCopy<T extends object>(object: T): T;
|
|
126
|
+
//#endregion
|
|
127
|
+
//#region src/functions/deepFreeze.d.ts
|
|
128
|
+
declare function deepFreeze<T extends object>(object: T): Readonly<T>;
|
|
129
|
+
//#endregion
|
|
124
130
|
//#region src/functions/getRandomNumber.d.ts
|
|
125
131
|
declare function getRandomNumber(lowerBound: number, upperBound: number): number;
|
|
126
132
|
//#endregion
|
|
@@ -204,4 +210,4 @@ declare function truncate(stringToTruncate: string, maxLength?: number): string;
|
|
|
204
210
|
//#region src/functions/wait.d.ts
|
|
205
211
|
declare function wait(seconds: number): Promise<void>;
|
|
206
212
|
//#endregion
|
|
207
|
-
export { APIError, type CreateFormDataOptions, type CreateFormDataOptionsNullableResolution, type CreateFormDataOptionsUndefinedOrNullResolution, DataError, type DisallowUndefined, type Email, type Env, type FormDataArrayResolutionStrategy, type FormDataNullableResolutionStrategy, type HTTPErrorCode, type IgnoreCase, type KebabToCamelOptions, NAMESPACE_EXPORT_REGEX, type NonUndefined, NormaliseIndentsFunction, NormaliseIndentsOptions, NormalizeIndentsFunction, NormalizeIndentsOptions, type OptionalOnCondition, type RecordKey, RemoveIndentsFunction, RemoveIndentsOptions, type StringListToArrayOptions, type UUID, addDaysToDate, appendSemicolon, camelToKebab, convertFileToBase64, createFormData, createTemplateStringsArray, fillArray, formatDateAndTime, getRandomNumber, getRecordKeys, httpErrorCodeLookup, interpolate, interpolateObjects, isAnniversary, isLeapYear, isMonthlyMultiple, isOrdered, isSameDate, kebabToCamel, normaliseImportPath, normaliseIndents, normalizeImportPath, normalizeIndents, omitProperties, paralleliseArrays, parseBoolean, parseEmail, parseEnv, parseFormData, parseIntStrict, parseUUID, parseZodSchema, randomiseArray, range, removeDuplicates, removeIndents, stringListToArray, stringToBoolean, truncate, wait };
|
|
213
|
+
export { APIError, type CreateFormDataOptions, type CreateFormDataOptionsNullableResolution, type CreateFormDataOptionsUndefinedOrNullResolution, DataError, type DisallowUndefined, type Email, type Env, type FormDataArrayResolutionStrategy, type FormDataNullableResolutionStrategy, type HTTPErrorCode, type IgnoreCase, type KebabToCamelOptions, NAMESPACE_EXPORT_REGEX, type NonUndefined, NormaliseIndentsFunction, NormaliseIndentsOptions, NormalizeIndentsFunction, NormalizeIndentsOptions, type OptionalOnCondition, type RecordKey, RemoveIndentsFunction, RemoveIndentsOptions, type StringListToArrayOptions, type UUID, addDaysToDate, appendSemicolon, camelToKebab, convertFileToBase64, createFormData, createTemplateStringsArray, deepCopy, deepFreeze, fillArray, formatDateAndTime, getRandomNumber, getRecordKeys, httpErrorCodeLookup, interpolate, interpolateObjects, isAnniversary, isLeapYear, isMonthlyMultiple, isOrdered, isSameDate, kebabToCamel, normaliseImportPath, normaliseIndents, normalizeImportPath, normalizeIndents, omitProperties, paralleliseArrays, parseBoolean, parseEmail, parseEnv, parseFormData, parseIntStrict, parseUUID, parseZodSchema, randomiseArray, range, removeDuplicates, removeIndents, stringListToArray, stringToBoolean, truncate, wait };
|
package/dist/index.js
CHANGED
|
@@ -270,6 +270,32 @@ function isMonthlyMultiple(firstDate, secondDate) {
|
|
|
270
270
|
}
|
|
271
271
|
var isMonthlyMultiple_default = isMonthlyMultiple;
|
|
272
272
|
|
|
273
|
+
//#endregion
|
|
274
|
+
//#region src/functions/deepCopy.ts
|
|
275
|
+
function callDeepCopy(input) {
|
|
276
|
+
return typeof input === "object" && input !== null ? deepCopy(input) : input;
|
|
277
|
+
}
|
|
278
|
+
function deepCopy(object) {
|
|
279
|
+
if (Array.isArray(object)) return object.map((item) => {
|
|
280
|
+
return callDeepCopy(item);
|
|
281
|
+
});
|
|
282
|
+
const clonedObject = { ...object };
|
|
283
|
+
for (const key in clonedObject) {
|
|
284
|
+
const value = clonedObject[key];
|
|
285
|
+
clonedObject[key] = callDeepCopy(value);
|
|
286
|
+
}
|
|
287
|
+
return clonedObject;
|
|
288
|
+
}
|
|
289
|
+
var deepCopy_default = deepCopy;
|
|
290
|
+
|
|
291
|
+
//#endregion
|
|
292
|
+
//#region src/functions/deepFreeze.ts
|
|
293
|
+
function deepFreeze(object) {
|
|
294
|
+
for (const value of Object.values(object)) if (value && typeof value === "object") deepFreeze(value);
|
|
295
|
+
return Object.freeze(object);
|
|
296
|
+
}
|
|
297
|
+
var deepFreeze_default = deepFreeze;
|
|
298
|
+
|
|
273
299
|
//#endregion
|
|
274
300
|
//#region src/functions/getRecordKeys.ts
|
|
275
301
|
function getRecordKeys(record) {
|
|
@@ -589,4 +615,4 @@ function wait(seconds) {
|
|
|
589
615
|
var wait_default = wait;
|
|
590
616
|
|
|
591
617
|
//#endregion
|
|
592
|
-
export { APIError_default as APIError, DataError_default as DataError, NAMESPACE_EXPORT_REGEX_default as NAMESPACE_EXPORT_REGEX, addDaysToDate_default as addDaysToDate, appendSemicolon_default as appendSemicolon, camelToKebab_default as camelToKebab, convertFileToBase64_default as convertFileToBase64, createFormData_default as createFormData, createTemplateStringsArray_default as createTemplateStringsArray, fillArray_default as fillArray, formatDateAndTime_default as formatDateAndTime, getRandomNumber_default as getRandomNumber, getRecordKeys_default as getRecordKeys, httpErrorCodeLookup, interpolate_default as interpolate, interpolateObjects_default as interpolateObjects, isAnniversary_default as isAnniversary, isLeapYear_default as isLeapYear, isMonthlyMultiple_default as isMonthlyMultiple, isOrdered_default as isOrdered, isSameDate_default as isSameDate, kebabToCamel_default as kebabToCamel, normaliseImportPath, normaliseIndents_default as normaliseIndents, normalizeImportPath_default as normalizeImportPath, normalizeIndents, omitProperties_default as omitProperties, paralleliseArrays_default as paralleliseArrays, parseBoolean_default as parseBoolean, Email_default as parseEmail, Env_default as parseEnv, parseFormData_default as parseFormData, parseIntStrict_default as parseIntStrict, UUID_default as parseUUID, parseZodSchema_default as parseZodSchema, randomiseArray_default as randomiseArray, range_default as range, removeDuplicates_default as removeDuplicates, removeIndents_default as removeIndents, stringListToArray_default as stringListToArray, stringToBoolean, truncate_default as truncate, wait_default as wait };
|
|
618
|
+
export { APIError_default as APIError, DataError_default as DataError, NAMESPACE_EXPORT_REGEX_default as NAMESPACE_EXPORT_REGEX, addDaysToDate_default as addDaysToDate, appendSemicolon_default as appendSemicolon, camelToKebab_default as camelToKebab, convertFileToBase64_default as convertFileToBase64, createFormData_default as createFormData, createTemplateStringsArray_default as createTemplateStringsArray, deepCopy_default as deepCopy, deepFreeze_default as deepFreeze, fillArray_default as fillArray, formatDateAndTime_default as formatDateAndTime, getRandomNumber_default as getRandomNumber, getRecordKeys_default as getRecordKeys, httpErrorCodeLookup, interpolate_default as interpolate, interpolateObjects_default as interpolateObjects, isAnniversary_default as isAnniversary, isLeapYear_default as isLeapYear, isMonthlyMultiple_default as isMonthlyMultiple, isOrdered_default as isOrdered, isSameDate_default as isSameDate, kebabToCamel_default as kebabToCamel, normaliseImportPath, normaliseIndents_default as normaliseIndents, normalizeImportPath_default as normalizeImportPath, normalizeIndents, omitProperties_default as omitProperties, paralleliseArrays_default as paralleliseArrays, parseBoolean_default as parseBoolean, Email_default as parseEmail, Env_default as parseEnv, parseFormData_default as parseFormData, parseIntStrict_default as parseIntStrict, UUID_default as parseUUID, parseZodSchema_default as parseZodSchema, randomiseArray_default as randomiseArray, range_default as range, removeDuplicates_default as removeDuplicates, removeIndents_default as removeIndents, stringListToArray_default as stringListToArray, stringToBoolean, truncate_default as truncate, wait_default as wait };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alextheman/utility",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"description": "Helpful utility functions",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -43,13 +43,13 @@
|
|
|
43
43
|
"zod": "^4.1.13"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@alextheman/eslint-plugin": "^4.2.
|
|
46
|
+
"@alextheman/eslint-plugin": "^4.2.3",
|
|
47
47
|
"@types/node": "^24.10.1",
|
|
48
48
|
"eslint": "^9.39.1",
|
|
49
49
|
"globals": "^16.5.0",
|
|
50
50
|
"husky": "^9.1.7",
|
|
51
51
|
"jsdom": "^27.2.0",
|
|
52
|
-
"prettier": "^3.7.
|
|
52
|
+
"prettier": "^3.7.2",
|
|
53
53
|
"tsdown": "^0.16.8",
|
|
54
54
|
"typescript": "^5.9.3",
|
|
55
55
|
"vite-tsconfig-paths": "^5.1.4",
|