sort-object-keys2
Advanced tools
Comparing version
@@ -1,58 +0,55 @@ | ||
declare function sortObject<T>(object: T, options?: sortObject.IOptions & { | ||
export declare function sortObject<T extends Record<any, any>>(object: T, options?: Omit<IOptions<T>, 'useSource'> & { | ||
useSource: true; | ||
}): T; | ||
declare namespace sortObject { | ||
var default: typeof sortObject; | ||
export declare namespace sortObject { | ||
var sortObjectKeys: typeof sortObject; | ||
} | ||
declare function sortObject<T>(object: T, options?: sortObject.IOptions & { | ||
keys: string[]; | ||
export declare function sortObject<T extends Record<any, any>>(object: T, options?: Omit<IOptions<T>, 'keys' | 'onlyKeys'> & { | ||
keys: IOptions<T>["keys"]; | ||
onlyKeys: true; | ||
}): Partial<T>; | ||
declare namespace sortObject { | ||
var default: typeof sortObject; | ||
export declare namespace sortObject { | ||
var sortObjectKeys: typeof sortObject; | ||
} | ||
declare function sortObject<T>(object: T, options?: sortObject.IOptions): Partial<T>; | ||
declare namespace sortObject { | ||
var default: typeof sortObject; | ||
export declare function sortObject<T extends Record<any, any>>(object: T, options?: IOptions<T>): Partial<T>; | ||
export declare namespace sortObject { | ||
var sortObjectKeys: typeof sortObject; | ||
} | ||
declare function sortObject<T>(object: T, sortFn: (a: any, b: any) => any): Partial<T>; | ||
declare namespace sortObject { | ||
var default: typeof sortObject; | ||
export declare function sortObject<T extends Record<any, any>>(object: T, sortFn: IOptions<T>["sort"]): T; | ||
export declare namespace sortObject { | ||
var sortObjectKeys: typeof sortObject; | ||
} | ||
declare function sortObject<T>(object: T, sortWith: string[]): Partial<T>; | ||
declare namespace sortObject { | ||
var default: typeof sortObject; | ||
export declare function sortObject<T extends Record<any, any>>(object: T, keyOrders: IOptions<T>["keys"]): T; | ||
export declare namespace sortObject { | ||
var sortObjectKeys: typeof sortObject; | ||
} | ||
declare module sortObject { | ||
interface IOptions { | ||
/** | ||
* key order | ||
*/ | ||
keys?: string[]; | ||
/** | ||
* return Object only keys | ||
* will disable useSource | ||
*/ | ||
onlyKeys?: boolean; | ||
/** | ||
* sort callback | ||
* | ||
* @param a | ||
* @param b | ||
* @returns {any} | ||
*/ | ||
sort?: (a: any, b: any) => any; | ||
/** | ||
* return reversed Object | ||
*/ | ||
desc?: boolean; | ||
allowNotExists?: boolean; | ||
/** | ||
* return source Object | ||
*/ | ||
useSource?: boolean; | ||
} | ||
const sortObjectKeys: typeof sortObject; | ||
export interface IOptions<T extends Record<any, any> = Record<any, any>, K extends string = Extract<keyof T, string>> { | ||
/** | ||
* key order | ||
*/ | ||
keys?: (string | K)[]; | ||
/** | ||
* return Object only keys | ||
* will disable useSource | ||
*/ | ||
onlyKeys?: boolean; | ||
/** | ||
* sort callback | ||
* | ||
* @param a | ||
* @param b | ||
* @returns {any} | ||
*/ | ||
sort?: (a: string | K, b: string | K) => number; | ||
/** | ||
* return reversed Object | ||
*/ | ||
desc?: boolean; | ||
allowNotExists?: boolean; | ||
/** | ||
* return source Object | ||
*/ | ||
useSource?: boolean; | ||
} | ||
export { sortObject }; | ||
export { sortObject as sortObjectKeys }; | ||
export default sortObject; |
20
core.js
"use strict"; | ||
Object.defineProperty(exports, "__esModule", { value: true }); | ||
exports.sortObjectKeys = exports.sortObject = void 0; | ||
function sortObject(object, sortWith) { | ||
@@ -14,6 +15,6 @@ let options = {}; | ||
} | ||
let keys = (options.keys || []); | ||
let { keys = [], useSource, } = options; | ||
if (options.onlyKeys) { | ||
options.useSource = false; | ||
if ((options.keys || []).length == 0) { | ||
useSource = false; | ||
if (typeof keys.length !== 'number' || keys.length === 0) { | ||
throw new ReferenceError(`options.key is empty or not exists.`); | ||
@@ -36,3 +37,3 @@ } | ||
}, {}); | ||
if (options.useSource) { | ||
if (useSource) { | ||
Object.keys(ret) | ||
@@ -48,13 +49,10 @@ .forEach(function (key, index, array) { | ||
exports.sortObject = sortObject; | ||
(function (sortObject) { | ||
sortObject.sortObjectKeys = sortObject; | ||
})(sortObject || (sortObject = {})); | ||
exports.sortObject = sortObject; | ||
sortObject.default = sortObject; | ||
exports.sortObjectKeys = sortObject; | ||
sortObject.sortObjectKeys = sortObject; | ||
function array_unique(array) { | ||
return array.filter(function (el, index, arr) { | ||
return index == arr.indexOf(el); | ||
return index === arr.indexOf(el); | ||
}); | ||
} | ||
exports.default = sortObject; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFXQSxTQUFTLFVBQVUsQ0FBQyxNQUFNLEVBQUUsUUFBUTtJQUVuQyxJQUFJLE9BQU8sR0FBd0IsRUFBRSxDQUFDO0lBRXRDLElBQUksT0FBTyxRQUFRLEtBQUssVUFBVSxFQUNsQztRQUNDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO0tBQ3hCO1NBQ0ksSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUNoQztRQUNDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO0tBQ3hCO1NBRUQ7UUFDQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7S0FDM0M7SUFFRCxJQUFJLElBQUksR0FBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFFMUMsSUFBSSxPQUFPLENBQUMsUUFBUSxFQUNwQjtRQUNDLE9BQU8sQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1FBRTFCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQ3BDO1lBQ0MsTUFBTSxJQUFJLGNBQWMsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFBO1NBQy9EO0tBQ0Q7U0FFRDtRQUNDLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFO2FBQ2xCLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDL0M7S0FDRDtJQUVELElBQUksR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFMUIsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUNoQjtRQUNDLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUE7S0FDckI7SUFFRCxJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsS0FBSyxFQUFFLEdBQUc7UUFFekMsSUFBSSxPQUFPLENBQUMsY0FBYyxJQUFJLEdBQUcsSUFBSSxNQUFNLEVBQzNDO1lBQ0MsS0FBSyxDQUFDLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN6QjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2QsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRVAsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUNyQjtRQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDO2FBQ2QsT0FBTyxDQUFDLFVBQVUsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLO1lBRW5DLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ25CLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQ0Y7UUFFRCxPQUFPLE1BQU0sQ0FBQztLQUNkO0lBRUQsT0FBTyxHQUFHLENBQUM7QUFDWixDQUFDO0FBK0NRLGdDQUFVO0FBN0NuQixXQUFPLFVBQVU7SUFnQ0gseUJBQWMsR0FBRyxVQUFVLENBQUM7QUFDMUMsQ0FBQyxFQWpDTSxVQUFVLEtBQVYsVUFBVSxRQWlDaEI7QUFZUSxnQ0FBVTtBQVZuQixVQUFVLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQztBQUVoQyxTQUFTLFlBQVksQ0FBQyxLQUFZO0lBRWpDLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsR0FBRztRQUUzQyxPQUFPLEtBQUssSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUMsQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUlELGtCQUFlLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZnVuY3Rpb24gc29ydE9iamVjdDxUPihvYmplY3Q6IFQsIG9wdGlvbnM/OiBzb3J0T2JqZWN0LklPcHRpb25zICYge1xuXHR1c2VTb3VyY2U6IHRydWUsXG59KTogVFxuZnVuY3Rpb24gc29ydE9iamVjdDxUPihvYmplY3Q6IFQsIG9wdGlvbnM/OiBzb3J0T2JqZWN0LklPcHRpb25zICYge1xuXHRrZXlzOiBzdHJpbmdbXSxcblx0b25seUtleXM6IHRydWUsXG59KTogUGFydGlhbDxUPlxuZnVuY3Rpb24gc29ydE9iamVjdDxUPihvYmplY3Q6IFQsIG9wdGlvbnM/OiBzb3J0T2JqZWN0LklPcHRpb25zKTogUGFydGlhbDxUPlxuZnVuY3Rpb24gc29ydE9iamVjdDxUPihvYmplY3Q6IFQsIHNvcnRGbjogKGEsIGIpID0+IGFueSk6IFBhcnRpYWw8VD5cbmZ1bmN0aW9uIHNvcnRPYmplY3Q8VD4ob2JqZWN0OiBULCBzb3J0V2l0aDogc3RyaW5nW10pOiBQYXJ0aWFsPFQ+XG5mdW5jdGlvbiBzb3J0T2JqZWN0KG9iamVjdCwgc29ydFdpdGgpXG57XG5cdGxldCBvcHRpb25zOiBzb3J0T2JqZWN0LklPcHRpb25zID0ge307XG5cblx0aWYgKHR5cGVvZiBzb3J0V2l0aCA9PT0gJ2Z1bmN0aW9uJylcblx0e1xuXHRcdG9wdGlvbnMuc29ydCA9IHNvcnRXaXRoO1xuXHR9XG5cdGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoc29ydFdpdGgpKVxuXHR7XG5cdFx0b3B0aW9ucy5rZXlzID0gc29ydFdpdGg7XG5cdH1cblx0ZWxzZVxuXHR7XG5cdFx0b3B0aW9ucyA9IE9iamVjdC5hc3NpZ24ob3B0aW9ucywgc29ydFdpdGgpO1xuXHR9XG5cblx0bGV0IGtleXM6IHN0cmluZ1tdID0gKG9wdGlvbnMua2V5cyB8fCBbXSk7XG5cblx0aWYgKG9wdGlvbnMub25seUtleXMpXG5cdHtcblx0XHRvcHRpb25zLnVzZVNvdXJjZSA9IGZhbHNlO1xuXG5cdFx0aWYgKChvcHRpb25zLmtleXMgfHwgW10pLmxlbmd0aCA9PSAwKVxuXHRcdHtcblx0XHRcdHRocm93IG5ldyBSZWZlcmVuY2VFcnJvcihgb3B0aW9ucy5rZXkgaXMgZW1wdHkgb3Igbm90IGV4aXN0cy5gKVxuXHRcdH1cblx0fVxuXHRlbHNlXG5cdHtcblx0XHRrZXlzID0ga2V5cy5jb25jYXQoKVxuXHRcdFx0LmNvbmNhdChPYmplY3Qua2V5cyhvYmplY3QpLnNvcnQob3B0aW9ucy5zb3J0KSlcblx0XHQ7XG5cdH1cblxuXHRrZXlzID0gYXJyYXlfdW5pcXVlKGtleXMpO1xuXG5cdGlmIChvcHRpb25zLmRlc2MpXG5cdHtcblx0XHRrZXlzID0ga2V5cy5yZXZlcnNlKClcblx0fVxuXG5cdGxldCByZXQgPSBrZXlzLnJlZHVjZShmdW5jdGlvbiAodG90YWwsIGtleSlcblx0e1xuXHRcdGlmIChvcHRpb25zLmFsbG93Tm90RXhpc3RzIHx8IGtleSBpbiBvYmplY3QpXG5cdFx0e1xuXHRcdFx0dG90YWxba2V5XSA9IG9iamVjdFtrZXldO1xuXHRcdH1cblxuXHRcdHJldHVybiB0b3RhbDtcblx0fSwge30pO1xuXG5cdGlmIChvcHRpb25zLnVzZVNvdXJjZSlcblx0e1xuXHRcdE9iamVjdC5rZXlzKHJldClcblx0XHRcdC5mb3JFYWNoKGZ1bmN0aW9uIChrZXksIGluZGV4LCBhcnJheSlcblx0XHRcdHtcblx0XHRcdFx0ZGVsZXRlIG9iamVjdFtrZXldO1xuXHRcdFx0XHRvYmplY3Rba2V5XSA9IHJldFtrZXldO1xuXHRcdFx0fSlcblx0XHQ7XG5cblx0XHRyZXR1cm4gb2JqZWN0O1xuXHR9XG5cblx0cmV0dXJuIHJldDtcbn1cblxubW9kdWxlIHNvcnRPYmplY3Rcbntcblx0ZXhwb3J0IGludGVyZmFjZSBJT3B0aW9uc1xuXHR7XG5cdFx0LyoqXG5cdFx0ICoga2V5IG9yZGVyXG5cdFx0ICovXG5cdFx0a2V5cz86IHN0cmluZ1tdLFxuXHRcdC8qKlxuXHRcdCAqIHJldHVybiBPYmplY3Qgb25seSBrZXlzXG5cdFx0ICogd2lsbCBkaXNhYmxlIHVzZVNvdXJjZVxuXHRcdCAqL1xuXHRcdG9ubHlLZXlzPzogYm9vbGVhbixcblx0XHQvKipcblx0XHQgKiBzb3J0IGNhbGxiYWNrXG5cdFx0ICpcblx0XHQgKiBAcGFyYW0gYVxuXHRcdCAqIEBwYXJhbSBiXG5cdFx0ICogQHJldHVybnMge2FueX1cblx0XHQgKi9cblx0XHRzb3J0PzogKGEsIGIpID0+IGFueSxcblx0XHQvKipcblx0XHQgKiByZXR1cm4gcmV2ZXJzZWQgT2JqZWN0XG5cdFx0ICovXG5cdFx0ZGVzYz86IGJvb2xlYW4sXG5cdFx0YWxsb3dOb3RFeGlzdHM/OiBib29sZWFuLFxuXHRcdC8qKlxuXHRcdCAqIHJldHVybiBzb3VyY2UgT2JqZWN0XG5cdFx0ICovXG5cdFx0dXNlU291cmNlPzogYm9vbGVhbixcblx0fVxuXG5cdGV4cG9ydCBjb25zdCBzb3J0T2JqZWN0S2V5cyA9IHNvcnRPYmplY3Q7XG59XG5cbnNvcnRPYmplY3QuZGVmYXVsdCA9IHNvcnRPYmplY3Q7XG5cbmZ1bmN0aW9uIGFycmF5X3VuaXF1ZShhcnJheTogYW55W10pXG57XG5cdHJldHVybiBhcnJheS5maWx0ZXIoZnVuY3Rpb24gKGVsLCBpbmRleCwgYXJyKVxuXHR7XG5cdFx0cmV0dXJuIGluZGV4ID09IGFyci5pbmRleE9mKGVsKTtcblx0fSk7XG59XG5cbmV4cG9ydCB7IHNvcnRPYmplY3QgfVxuXG5leHBvcnQgZGVmYXVsdCBzb3J0T2JqZWN0O1xuIl19 | ||
//# sourceMappingURL=core.js.map |
@@ -5,4 +5,7 @@ "use strict"; | ||
*/ | ||
const core_1 = require("./core"); | ||
var __importDefault = (this && this.__importDefault) || function (mod) { | ||
return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
}; | ||
const core_1 = __importDefault(require("./core")); | ||
module.exports = core_1.default; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7QUFFSCxpQ0FBb0M7QUFHcEMsaUJBQVMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDcmVhdGVkIGJ5IHVzZXIgb24gMjAxOC80LzMvMDAzLlxuICovXG5cbmltcG9ydCBzb3J0T2JqZWN0S2V5cyBmcm9tICcuL2NvcmUnO1xuaW1wb3J0IElPcHRpb25zID0gc29ydE9iamVjdEtleXMuSU9wdGlvbnM7XG5cbmV4cG9ydCA9IHNvcnRPYmplY3RLZXlzO1xuIl19 | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "sort-object-keys2", | ||
"version": "1.1.0", | ||
"version": "2.0.0", | ||
"description": "Sort an object's keys, including an optional key list", | ||
@@ -42,7 +42,17 @@ "keywords": [ | ||
"scripts": { | ||
"test": "npx mocha \"!(node_modules)\\**\\*.+(test|spec).ts\"" | ||
"ncu": "npx yarn-tool ncu -u", | ||
"npm:publish": "npm publish", | ||
"postpublish_": "git commit -m \"chore(release): publish\" .", | ||
"prepublish:lockfile": "npx sync-lockfile .", | ||
"prepublishOnly": "yarn run ncu && yarn run sort-package-json && npx yarn-tool install && yarn run test", | ||
"sort-package-json": "npx yarn-tool sort", | ||
"test": "jest --coverage" | ||
}, | ||
"dependencies": {}, | ||
"devDependencies": { | ||
"@bluelovers/tsconfig": "^1.0.0" | ||
"@bluelovers/tsconfig": "^1.0.19", | ||
"@types/jest": "^25.2.1", | ||
"jest": "^25.2.7", | ||
"ts-jest": "^25.3.1" | ||
} | ||
} |
@@ -0,0 +0,0 @@ # sort-object-keys2 |
AI-detected possible typosquat
Supply chain riskAI has identified this package as a potential typosquat of a more popular package. This suggests that the package may be intentionally mimicking another package's name, description, or other metadata.
Found 1 instance in 1 package
8
33.33%0
-100%11572
-5.19%4
300%123
-1.6%