@mindfusion/pack
v2023.3.0
Published
Pack of UI Controls
Downloads
109
Maintainers
Readme
Pack of UI Controls for JavaScript and TypeScript
A diverse package with useful UI librarires for JavaScript and TypeScript developed by MindFusion.
Installing
For the latest stable version:
npm i @mindfusion/pack
MindFusion Pack for JavaScript Controls
- DataViews / Grid
- Diagrams
- Schedules
- Charts
- Gauges
- Maps
- Virtual Keyboard
- Calendar
- DateTimePicker
- Dialogs
- ImagePicker
- ListView
- Menu
- ToolTip
- ToolStrip
- Tabs
- TreeView
- Window
- WindowHost
What's New in Pack for JavaScript 2023.2
Diagramming
Web components
The library registers each control class as a web component. You can use the following tags to create corresponding components:
- <mindfusion-diagramview> creates a DiagramView instance.
- <mindfusion-ruler> creates a Ruler instance.
- <mindfusion-zoomcontrol> creates a ZoomControl instance.
- <mindfusion-overview> creates an Overview instance.
- <mindfusion-nodelistview> creates a NodeListView instance.
When instantiated as a web component, each control class creates required HTML elements as internal shadow DOM. You can get the JavaScript object corresponding to a web component by calling controls' find method with id argument.
<mindfusion-diagramview
id="diagramView"
style="position: absolute; left: 0px; top: 0px; right: 0px; bottom: 0px; overflow: auto;">
</mindfusion-diagramview>
var diagramView = DiagramView.find("diagramView");
var diagram = diagramView.diagram;
Animations
The library now includes several standard animation classes and methods. The animate method of DiagramItem can run following animations:
- FillColorAnimation animates the fill color of nodes or link arrowheads.
- StrokeColorAnimation animates the color of node borders or link segments.
- OpacityAnimation animates items' opacity for fade-in and fade-out effects.
Following animations can be applied to DiagramNodes:
- BounceAnimation animates vertical position of nodes.
- ShakeAnimation animates horizontal position of nodes.
- PulseAnimation animates node's local scale factor.
- PathAnimation moves nodes along specified path.
The animate method of DiagramView can run following animations:
- ScrollAnimation animates the scroll position of a view.
- ZoomAnimation animates the zoom factor of a view.
DiagramLink improvements
- Set the intermediateShape property to display arrowheads at the middle of each link segment. This could help users follow longer link paths. Intermediate arrowheads can be customized further by setting intermediateBrush and intermediateShapeSize.
- Set the allowSplitLinks property of Diagram to let users insert new link segments by dragging any point of a selected link's segment. In this mode users can also merge link segments by making them close to collinear, or by moving adjustment handles close to each other, as set via mergeThreshold.
Reversed tree layouts
The reversedLinks property of TreeLayout, RadialTreeLayout and BorderedTreeLayout lets you arrange trees where links point from child to parent nodes, instead of the default parent to child direction.
Scheduling
The library registers the Calendar class as a web component. You can use the tag to create the control.
When instantiated as a web component, the control creates required HTML elements as internal shadow DOM. You can get the JavaScript object corresponding to a web component by calling the find method with id argument.
<mindfusion-calendar id="calendar" style="height: 100%; width: 100%;">
</mindfusion-calendar>
var ms = MindFusion.Scheduling;
calendar = ms.Calendar.find("calendar");
calendar.currentView = ms.CalendarView.SingleMonth;
DataViews
The library registers the Grid class as a web component. You can use the tag to create the control.
When instantiated as a web component, the control creates required HTML elements as internal shadow DOM. You can get the JavaScript object corresponding to a web component by calling the find method with id argument.
<mindfusion-grid id="grid">
</mindfusion-grid>
var dv = MindFusion.DataViews;
var grid = dv.Grid.find("grid");
grid.model = new dv.ArrayModel(participants, columns, "index");
Documentation
Samples
- Online demo
- Online samples for diagrams, flowcharts, hierarchies and schemes
- Online sampels for schedules, timetables, calendars and resource views
- Online samples for charts and gauges
- Online samples for the Virtual Keyboard control
MindFusion Pack for JavaScript is distributed as an archive that contains over 100 samples with all components in the pack. You can download it from here.
Additional Information
Learn more about MindFusion JavaScript Pack from the official product page. Stay in touch with MindFusion and learn about our latest product announcements, tutorials and programming guidelines via Twitter or our company blog. A YouTube channel with interactive video tutorials is available here.
Technical Support
Licensing
The end-user license agreement for all MindFusion developer tools is uploaded here.