
Security News
/Research
Wallet-Draining npm Package Impersonates Nodemailer to Hijack Crypto Transactions
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
@hdsydsvenskan/forms-utils
Advanced tools
A collection of fields, widgets and other useful utils for the forms module.
const { customFields: fields } = require('@hdsydsvenskan/forms-utils');
const { fields, widgets } = require('forms');
const formDefinition = {
description: customFields.html({
label: 'Description',
html: '<p>This is a HTML description</p>'
}),
items: customFields.multiObject({
label: 'Items',
rowField: {
itemName: fields.string({ label: 'Name' }),
itemValuee: fields.string({ label: 'Value' })
}
})
}
.fields
.basic
– a basic field which can eg. be extended to create more complex fields.html
– a HTML field, which doesn't contain any actual form widget, but inserts a piece of HTML in its place instead (specified through a html
property). Does not interact with any value of the field, neither gets or sets it..multiField
– a multi row field for creating complex forms. Repeats a sub-form for every item in an array value + allows adding new items. Needs a piece of client side JS to delete rows and to make adding new rows easier..widgets
.utils
getUserAttrs()
– mimics the one from forms
itselfhtmlEscape()
– mimics the one from forms
itselftag()
– mimics the one from forms
itselfpromisedFormHandle(form, body)
– takes a form definition and a body and handles the form through a Promise
– resolving to { success: true, form }
, { error: true, form }
or { empty: true, form }
promisedFormHandles(forms, body)
– same as promisedFormHandle
, but with multiple form definitions. If any of those definitions return error: true
, then it will return { error: true, forms }
. If any forms is empty, then it will return { empty: true, forms }
. Else it will return { success: true, forms }
.import { multiField } from '@hdsydsvenskan/forms-utils/browser/multi-field';
const multiFieldSetup = multiFieldSetup({ dragula });
multiFieldSetup.init();
[options.activateInContext(newRow)]
– if provided, then this will be called for every new row added. This enables other pieces of javascript to run on those new rows – adding eg. autocomplete functionality or other interesting things[options.dragula]
– if drag and drop capabilities are wanted, then provide a version of Dragula 3.x
[options.textRemove]
– the text to add to the remove buttons. Defaults to Remove
.Returns an object
with two methods: initField(elem)
and init([context])
.
initField(elem)
initiates the javascript for a specific multi field setup.
init([context])
initiates the javascript for aöö multi field setups within the context
or document
.
FAQs
A set of useful utilities for the forms module
The npm package @hdsydsvenskan/forms-utils receives a total of 9 weekly downloads. As such, @hdsydsvenskan/forms-utils popularity was classified as not popular.
We found that @hdsydsvenskan/forms-utils demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 11 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
/Research
Malicious npm package impersonates Nodemailer and drains wallets by hijacking crypto transactions across multiple blockchains.
Security News
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.