
Company News
Jerod Santo Joins Socket as Head of Media
Allow myself to introduce... myself.
@toa.io/generic
Advanced tools
DEPRECATED
Do not use anything from this library.
Library is for internal use only. Barely documented. If you really need to understand something, see tests.
range(input: string): number[]
Transforms:
1-3 into [1, 2, 3]1..3 into [1, 2, 3]1-3, 5, 10..12 into [1, 2, 3, 5, 10, 11, 12]See tests.
shards(input: string): string[]
Transforms amqp://shard{0-2}.domain.com into:
[
'amqp://shard0.domain.com',
'amqp://shard1.domain.com',
'amqp://shard2.domain.com'
]
Uses range.
See tests.
entries(object: object): [key, value][]
Object.entries including Symbols.
generate(generate: function): object
generate function's signature is (segments: string[], value?: any): any | void
segments are nested property names, used to access the generated object and optional value is
passed if property was assigned with a value.
const generator = (segments, [key, value]) => {} // any property is an object
const object = generate(generator)
const _0 = object.a // will call callback with (['a'])
const _1 = object.a.b // (['a', 'b'])
object.a.b.c = 1 // (['a', 'b', 'c'], 1)
echo(input: string, variables?: Record<string, string>): string
Returns the input string.
Substitutes variables to a placeholders following ${NAME} syntax.
If no variables are passed, then environment variables are used.
process.env['FOO'] = 'bar'
const output = echo('foo: ${FOO}')
console.log(output) // foo: bar
const variables = { foo: 'world' }
const output = echo('hello ${foo}', variables)
console.log(output) // hello world
echo(input: string, values: string[]): string
When the second argument is an Array, its values are substituted to a placeholders following {N}
syntax.
echo('make {0} not {1}', ['love', 'war'])
When the second argument is a string, it and next arguments are substituted as
an array.
echo('make {0} not {1}', 'love', 'war')
map(object: object, transformation: Function): object
Traverse through a given plain object replacing its values (or key-value pairs) with a given
transformation function.
If the transformation function returns undefined then the current key-value pair will remain
unchanged.
Transformation function signature is:
(value: any) => any | void
or
(key: string, value: any) => [string, any] | void
plain(candidate: any): boolean
Returns true if an argument is a POJO, false otherwise.
async filter(array: any[], test): any[]
test function signature is async (any) => boolean
Async array filter.
pick(source: object, properties: string[]): object
Constructs an object by picking the set of properties from source object.
trim (input: string): string
Dedent multiline text using the first line's leading padding.
Buffer a stream.
buffer (stream: Readable): Buffer
Meoizes function returned value.
FAQs
Toa Generic Tools
The npm package @toa.io/generic receives a total of 2,258 weekly downloads. As such, @toa.io/generic popularity was classified as popular.
We found that @toa.io/generic demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Allow myself to introduce... myself.

Research
/Security News
A Twitch browser extension on Chrome and Firefox forwards users’ live OAuth session tokens through proxies controlled by a Russian bot service.

Security News
Anthropic found biased reasoning and recklessness drove Claude Mythos 5 to publish malware on PyPI and compromise a security vendor.