Product
Socket Now Supports uv.lock Files
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
@epam/assets
Advanced tools
This package is a part of EPAM UUI library.
@epam/assets contains variety of assets, which are usable without React:
4.0.0 - 07.05.2021
What’s New
[LazyDataSource] now supports nesting (grouping, trees) with lazy loading.
Quick start:
pass the getChildCount(item): number
prop. It should return an either:
update the 'api' callback to accept a second argument. When children are needed, we'll pass a parent entity in this new argument. Change your callback to perform request to server to retrieve children.
if you have different server APIs for parent and children, just tweak your 'api' callback like this:
api: (rq, ctx) => {
if (!ctx.parent)
return callParentApi(rq);
else
return callChildrenApi(rq);
}
if you want to retrieve children as parent's field, you can return them in api callback directly from parent's field, like: Promise.resolve({ items: ctx.parent.chidren, count: ctx.parent.children.length })
[Breaking Change] Item lists caching is moved from LazyDataSource to LazyTreeView. Items by ID cache is still in the LazyDataSource. We also stoped caching any previous loads of lists. This means that:
[Breaking Change] LazyDataSource's 'cacheSize' prop is removed. There's no more lists cache in the LazyDataSource (except the items by id cache)
[Breaking Change] DataSources and DataSourceView internal APIs changed. BaseDataSourceProps, [Lazy|Array]DataSourceParams, [Lazy|Array]DataSourceOptions, [Lazy|Array]ViewParams, [Lazy|Array]ViewOptions interfaces are merged into [Lazy|Array]DataSourceProps and [Lazy|Array]ViewProps. Applications which implements it's own DataSources, or leverage on these interfaces somehow, might need to update.
[Breaking Change] LazyDataSource always query from the start. Before, it was able to query the middle of the list, without querying start items. This can't be supported for 2-nd level of lists, and we don't see much use of this feature. Contact us if you really need this behavior.
[Breaking Change] LazyDataSource's generic parameters order changed from TItem, TFilter, TId, to a common TItem, TId, TFilter.
DataRowProps - extended with 'isLastChild' and 'path' props. isLastChild is true, if this row is the last of it's parent's children. Path prop contains all row's parents' ids and isLastChild prop.
These props are required to implement tree components, which renders lines connecting children with parents.
Both Lazy and ArrayDataSources supports these new props.
[Forms] Forms validation - better cross-fields dependencies. 'validate' function in Metadata now receives all parent objects in path as argument. Each validator receives N arguments - first is the value itself, then it's container, and down to the root object. You can use this to make validation dependencies between items. For example:
const value = { array: [{ id: 100, name: 'abc' }, { id: 101, name: 'bcd' }] };
const nameValidator = (name, item, array) => [item.id > 100 && name.length < 2 && "Items with ID > 100 should have names longer than 2"];
const meta = { array: { all: { props: { name: { validators: [nameValidator] }}}}};
[Form]: Added server validation mechanism. If you need to get form validation state from server-side, your onSave api should return object like { validation?: ICanBeInvalid }
[Tables]: Added columns resizing and reordering possibility:
svc.uuiUserSettings
context.[Tooltip] & [Dropdown]: Popper.js updated to v.2.x, added 'hide' modifier to hide body when target scrolled outside view
[Promo]: Added 'cell' mode for components which can be placed in table row
[Accordion]: Added "padding" and "renderAdditionalItems" props
[AnalyticContext]: add ip anonymization for google analytic
[AnalyticsContext]: add includeReferrer: true, includeUtm: true, saveParamsReferrerOncePerSession: false options for amplitude
[TimePicker]: added handling of invalid values, added placeholder
[SlateRTE]: show image toolbar on image isFocused
[PickerInput]: added PickerItem component, added 48 size, refactored footers according design, changed default prop 'minBodyWidth' to 360
[DataTableCell]: added prop alignAddons to align checkbox & folding arrows to the top or center
[Badge]: added transparent and semitransparent fill; Added more sizes;
What’s Fixed
FAQs
EPAM Assets Library
The npm package @epam/assets receives a total of 605 weekly downloads. As such, @epam/assets popularity was classified as not popular.
We found that @epam/assets demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 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.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools often miss.