![PyPI Slashes Malware Response Time: 90% of Issues Resolved in Under 24 Hours](https://cdn.sanity.io/images/cgdhsj6q/production/eee3e3fc69826f43dfc3366b71472d981003a5cb-1024x1024.webp?w=400&fit=max&auto=format)
Security News
PyPI Slashes Malware Response Time: 90% of Issues Resolved in Under 24 Hours
PyPI has drastically improved its malware response times, resolving 90% of issues in under 24 hours and removing 900 projects since March 2024.
@rjsf/utils
Advanced tools
Package description
@rjsf/utils is a utility library for React JSON Schema Form (RJSF). It provides a set of helper functions and utilities to work with JSON schemas, form data, and UI schemas. This package is designed to simplify the process of creating and managing forms using JSON schema definitions.
Schema Validation
This feature allows you to validate form data against a JSON schema. The `validateFormData` function takes form data and a schema as inputs and returns validation errors if any.
const { validateFormData } = require('@rjsf/utils');
const schema = { type: 'object', properties: { name: { type: 'string' } } };
const formData = { name: 'John Doe' };
const result = validateFormData(formData, schema);
console.log(result.errors);
Schema Merging
This feature allows you to merge multiple JSON schemas into one. The `mergeSchemas` function takes two or more schemas and combines them into a single schema.
const { mergeSchemas } = require('@rjsf/utils');
const schema1 = { type: 'object', properties: { name: { type: 'string' } } };
const schema2 = { type: 'object', properties: { age: { type: 'number' } } };
const mergedSchema = mergeSchemas(schema1, schema2);
console.log(mergedSchema);
Form Data Manipulation
This feature allows you to manipulate form data based on a schema. The `getDefaultFormState` function takes a schema and form data as inputs and returns the default form state.
const { getDefaultFormState } = require('@rjsf/utils');
const schema = { type: 'object', properties: { name: { type: 'string' }, age: { type: 'number' } } };
const formData = { name: 'John Doe' };
const defaultFormData = getDefaultFormState(schema, formData);
console.log(defaultFormData);
AJV (Another JSON Schema Validator) is a popular JSON schema validator. It provides high-performance validation of JSON schemas and is widely used in the JavaScript ecosystem. Compared to @rjsf/utils, AJV focuses more on schema validation and less on form-specific utilities.
JSON Schema Faker is a library that generates fake data based on a JSON schema. It is useful for testing and prototyping. While @rjsf/utils focuses on form utilities, JSON Schema Faker is more about generating mock data from schemas.
React JSONSchema Form is a library for building forms from JSON schema definitions. It includes a set of utilities similar to @rjsf/utils but is more focused on the form rendering aspect. @rjsf/utils can be seen as a subset of the utilities provided by React JSONSchema Form.
Changelog
5.3.0
package.json
to properly add required dependencies explicitly which were installed implicitlyReset
function added for Programmatically Reset
action. Reset
function will reset form data and validation errors. Form data will set to default values.TimeWidget
that works for all themesInvalidObjectField
error in ObjectField
Form
, ArrayField
, ObjectField
and SchemaField
RadioWidget
's onChange return value.BaseInputTemplate
so that it shrinks a time
formatted inputBaseInputTemplate
so that it shrinks a time
formatted inputgetWidget()
to support the time
to TimeWidget
mappingTranslatableString
enums CopyButton
and InvalidObjectField
that localizes the information extracted from ObjectField
as markdownArrayFieldTemplateItemType
to add support for copying array itemsUIOptionsBaseType
to extract the addable
, orderable
, removable
, label
and duplicateKeySuffixSeparator
into a new GlobalUISchemaOptions
type that adds copyable
UIOptionsBaseType
from GlobalUISchemaOptions
UiSchema
added a new optional ui:globalOptions
prop of type GlobalUISchemaOptions
and a new UI_GLOBAL_OPTIONS_KEY
constantglobalUiOptions
object of type GlobalUISchemaOptions
in Registry
as well as CopyButton
in ButtonTemplates
getUiOptions()
and getDisplayLabel()
(and its SchemaUtilsType
counterpart) to take an optional GlobalUISchemaOptions
parameter that is used to include global options into the returned uiOptions
Programmatically Reset
button to clear states which are form data and validation errors.Date & time
example to show off the new TimeWidget
.custom-widgets-fields
and widgets
documentation to mention the new TimeWidget
and its support for the time
format.custom-templates
, internals
, uiSchema
, utility-functions
and arrays
for the new copy array feature as well as the global UI Schema options supportarrays
example to add examples for the new copyable
featureReadme
Utility functions for react-jsonschema-form
.
Explore the docs »
View Playground
·
Report Bug
·
Request Feature
Exports utils
functions for react-jsonschema-form
.
yarn add @rjsf/utils
import * as Utils from '@rjsf/utils';
Utility function documentation
See the open issues for a list of proposed features (and known issues).
Read our contributors' guide to get started.
rjsf team: https://github.com/orgs/rjsf-team/people
GitHub repository: https://github.com/rjsf-team/react-jsonschema-form
FAQs
Utility functions for @rjsf/core
The npm package @rjsf/utils receives a total of 184,809 weekly downloads. As such, @rjsf/utils popularity was classified as popular.
We found that @rjsf/utils demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 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
PyPI has drastically improved its malware response times, resolving 90% of issues in under 24 hours and removing 900 projects since March 2024.
Security News
Research
The Socket Research team breaks down an obfuscated script designed to facilitate unauthorized file uploads to multiple external services.
Security News
Node.js has automated its security release process, doubling the number of releases, and is re-evaluating unsupported experimental features with the Next 10 group to enhance security.