VDT 22.3 Changes [VD RN]
The information on this page is sourced from here: Start Here / Changelog - Page ⋅ Storybook (vidispine.github.io)
22.3.0
cra-template-vdt
Updates
Updated dependencies
@vidispine/eslint-config
No changes.
@vidispine/eslint-config-typescript
New package
Package with typescript eslint config
@vidispine/eslint-config-base
No changes.
@vidispine/eslint-config-react
Updates
Disabled preferring default export
'import/prefer-default-export': 'off'
example-vdt-mui-app
No changes.
example-vdt-material-app
New
Added export of collection in collection view header
Updates
Header updated with vidispine logo and new title.
Metadata fields and groups have been improved with e.g:
Refactor to use FieldGroup Context
OnSuccess and onError notifications
General bug fixes
Item Upload improved with possibility to add metadata to both fields and groups during upload
Fix so only delete option in item header is hidden if user doesn't have
_item_writeroleBug fix for export location including script tag with empty string
General refactor of Item components for better code readability
@vidispine/prettier-config
No changes.
@vidispine/proptypes
dependencies
@babel/runtime7.17.0 -> 7.18.9
@vidispine/types
Updates
Typings updated for VidiCore 22.3.0
Bug fix for missing type properties for complexContent extensions
In a few cases these types were missing extended properties and only showed baseTypes, fixed with intersection
@vidispine/vdt-api
New
collection.exportCollection endpoint added
/API/collection/${collectionId}/export
library.exportLibrary endpoint added
/API/library/${libraryId}/export
@vidispine/vdt-js
New
SYSTEM_FIELDGROUPS: const with all built in VidiCore system field group names
SYSTEM_FIELDS: const with all built in VidiCore system field names
Improvements, documentation and tests added for time and metadata utils, see below:
CreateMetadataType
Breaking Changes
Multiple (array) groups with same name no longer have to be sent in with
groupName, e.g.CODE{ //... group : [ { groupName : 'my_group_name' , my_fieldName : 'my value' } , //... ] , //... }CopyNow these can instead be interpreted as groups with the same name if objects inside the array have an undefined
valueCODE{ //... my_group_name : [ { /* value: undefined => interpreted as group */ my_fieldName : 'my value' , } , ] ; //... }Copy
Updates
More alternatives for the input to enable creating all MetadataType variations in VidiCore
See the storybook examples for a walk through of them
TimeCode
TimeCode class and functions have been improved with features, tests, documentation and stories.
Breaking changes
toTime: No longer returns
frames- use toUnits insteadtoJson: Deprecated (with warning for now) - use toObject instead
formatSeconds: Replaced with formatTimeCodeSeconds
formatSecondsPrecise: Replaced with formatTimeCodeSeconds
formatTimeCodeSeconds: timeBase sent in options to be same as other format functions
Instead of
formatTimeCodeSeconds(smpte, timeBase)useformatTimeCodeSeconds(smpte, { timeBase })
formatSmpte: Renamed formatTimeCodeSmpte
TimeCode constructor options: Changing
fieldtoframeSeparatorSet the frameSeparator to use for smpte (e.g.
:|.|;|,) instead of "1" or "2"It will, same as before, by default use
:(and for dropFrame;)
Improvements
Documentation added for all functions and class methods
toText: Added option object `{ includeTimeBaseForSeconds, constant, fraction }
toTime: Returns
millisecondsas welltoDuration: Supporting different formats (with ms also), e.g. hh:mm:ss.SS
New
toUnits: Get hours, minutes, seconds and frames for TimeCode instance
toObject: Replacing toJson (same functionality)
formatTimeCodeSeconds: Combining formatSeconds and formatSecondsPrecise into one function
Will be precise by default if seconds have decimals
Option to
useGCDto divide numerator/denominator in timeBaseOption to set
timeBasefor returned instance
createTimeCode: Formatting various inputs to a TimeCode instance in one combined function
TimeBase
TimeBase class and functions have been improved with features, tests, documentation and stories.
Breaking changes
toText: Changed to use an options object instead of bool arg
Use
toText({ constant: true })instead oftoText(true)
toRate: Changed to use an options object instead of bool args
rounded renamed to fixed
Instead of
toRate(true)usetoRate({ constant: true })Instead of
toRate(false, false)usetoRate({ fixed: false })
toJson: Deprecated (with warning for now) - use toObject instead
formatTimeBase: Renamed createTimeBase
Improvements
toDuration: Supporting different formats (with ms also), e.g. hh:mm:ss.SS
toText: Added options.fraction
always show numerator (even when 1)
Same default behavior as before
toRate: Added options object `{fixed, constant, rounded}``
Return max decimal places with
fixed:falseReturn specific decimal places with
fixed:<number>Return rounded to nearest integer with
roundedSame default behavior as before
New
toObject: Replacing toJson (same functionality)
createTimeBase: Replacing formatTimeBase (same functionality)
dependencies
filesize6.1.0 -> 6.4.0
@vidispine/mui
New
ImageCollagemoved over from vdt-materialuiA new flag
showLastRowStretchedfor stretching all last row images instead of just a single
dependencies
@babel/runtime7.17.0 -> 7.18.9@mui/icons-material5.5.1 -> 5.8.4@mui/lab5.0.0-alpha.75 -> 5.0.0-alpha.95@mui/material5.5.3 -> 5.10.1@mui/styles5.5.3 -> 5.9.3clsx1.1.1 -> 1.2.1
@vidispine/vdt-materialui
Breaking Changes
FieldGroupDesignerChanged propsmetadataFieldGroupDocument changed name to metadataFieldGroupType
setNotification replaced with onSuccess and onError
Updates
CollectionMetadataEditUpdated to work with field groupsnew prop
metadataTypeadded for passing metadataType directly and not from inside collectionType
CollectionMetadataTabUpdated to work with field groups and their attributes using contentPathsnew props:
displayJoinValue,displayGroupAsList,useContentPaths,formatValue,queryParams,getAttributes
EntityAccessTablePossible to modify styles with propclasses.entityAccessMenuContextItemMetadataListFieldGroupItemAdded a defaultExpanded prop (default: false)ItemMetadataTabUpdated to work with field groupsnew props:
displayJoinValue,displayGroupAsList,queryParams,getAttributes
ItemPlayerUpdated withA binary file player
Loading display
No Preview display
SavedSearchProp forextraMenuItemsaddedSavedSearchListProp forextraMenuItemsaddedSavedSearchRowProps formenuContextandextraMenuItemsaddedAn extra menu for showing additional menu items added
SearchInputProps for adding aTopSearchesComponentandTopSearchesPropsaddedUserAvatarButtonProp for adding an customavatarText
dependencies
@babel/runtime7.17.0 -> 7.18.9clsx1.1.1 -> 1.2.1core-js3.8.3 -> 3.24.1filesize6.1.0 -> 6.4.0final-form4.20.1 -> 4.20.7moment2.28.0 -> 2.29.4pdfjs-dist2.9.359 -> 2.15.349react-dropzone11.2.4 -> 11.7.1react-final-form6.5.2 -> 6.5.9react-pdf5.4.0 -> 5.7.2react-select4.3.1 -> 5.4.0typeface-exo-21.1.4 -> 1.1.13typeface-roboto0.0.75 -> 1.1.13
...
@vidispine/vdt-react
Updates
useAddMetadataFieldAttributesPropgetAttributes(default true) for disabling fetching attributesuseGetEntityMetadataHook for fetching metadata for an entity (using the useApi hook)GetEntityMetadataWrapper component for fetching metadata for an entityuseGetFieldGroupHook for fetching a field group (using the useApi hook)GetFieldGroupWrapper component for fetching a field groupuseSearchAdded support for updating reducer withmatrixParamsandpagefor itemSearchDocumentMetadataTypeAdded prop formetadataTypedirectly
dependencies
@babel/runtime7.17.0 -> 7.18.9react-cookie4.0.3 -> 4.1.1use-deep-compare-effect1.3.1 -> 1.8.1
@vidispine/vdt-react-timeline
New
TimelineEventcomponent exported (was missing in 22.2)
dependencies
@babel/runtime7.17.0 -> 7.18.9konva8.2.1 -> 8.3.11react-konva17.0.2-5 -> 17.0.2-6
@vidispine/vdt-videojs-react
dependencies
@babel/runtime7.17.0 -> 7.18.9
@vidispine/vdt-videojs
dependencies
@babel/runtime7.17.0 -> 7.18.9mousetrap1.6.3 -> 1.6.5video.js7.6.6 -> 7.20.2
core
Documentation (jsdoc) for vdt-js and vdt-api have been added as iframes inside storybook (seen in the "Docs"-tab)