short-objectid
v5.0.0
Published
The idea of this project is make your details route easier 🥰 ..
Downloads
18
Maintainers
Readme
Short ObjectId 🗜
The idea of this module is make your route easier ⚡ when you work with mongodb object-ids 🗜🚀 ..
Warning ⚠️: Previous versions are deprecated. For that the first release is 5.0.0-rc 👻.
Installation
# npm ..
$ npm install short-objectid
# yarn ..
$ yarn add short-objectid
API
Caution 🚨: Be careful when you use
shortObjectIdCache
. All cache hooks are not stable outside the function.
shortObjectId
— helps you to compress your ObjectId and make it short.shortObjectIdCache
— A predictable cache container instance, helps you to go and return between the shortObjetId number and the original ObjectId and subscribe to each shortObjectId (func) call.
When you pass
cache: true
inside the options object, you don't need to useshortObjectIdCache
because it works on the background.
Usage
This is a practical example of how to use.
// you can also use the desctructure way ..
const shortObjectId = require ('short-objectid');
// objectId <required> ..
let mongodbObjectId = { "$oid" : "507f191e810c19729de860ea" };
// config object <optional> ..
let config = { Timestamp: 57, MachineId: 65, ProcessId: 48, Counter: 47 };
// options object <optional> ..
// you can pass one of these options [cache, keepOriginal] ..
// cache option, informs the shortObjectId function that you
// should subscribe to each call and then store all data ..
let opts = { cache: true };
// Now you have access to 2 hooks (only with cache opts)
// + getShortObjectId(fullObjectId: string): number
// + getFullObjectId(shortObjectId: number): string
const { shortObjectId, getShortObjectId, getFullObjectId } = shortObjectId(mongodbObjectId, config, opts);
// Result:
// console.log(`*****\n ${shortObjectId} \n*****`);
// Treminal
// $your_pc_name_with_your_directory
// *****
// 532860
// *****
You can play around with it on this sandbox example codesandbox.io/short-objectid using
Express JS
andMongoose
🙌🏻.