https://github.com/lidorsystems/integralui-web
IntegralUI Web - Advanced UI Components for Angular, React and Vue
https://github.com/lidorsystems/integralui-web
angular component grid integralui javascript react treegrid treeview ui vue vuejs web web-component
Last synced: 8 months ago
JSON representation
IntegralUI Web - Advanced UI Components for Angular, React and Vue
- Host: GitHub
- URL: https://github.com/lidorsystems/integralui-web
- Owner: lidorsystems
- License: other
- Created: 2021-03-18T13:13:10.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2024-05-14T12:30:59.000Z (almost 2 years ago)
- Last Synced: 2025-06-30T08:57:22.963Z (9 months ago)
- Topics: angular, component, grid, integralui, javascript, react, treegrid, treeview, ui, vue, vuejs, web, web-component
- Language: JavaScript
- Homepage:
- Size: 3.97 MB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGE_LOG.md
- License: LICENSE.md
Awesome Lists containing this project
README
# IntegralUI Web, v24.1
IntegralUI Web includes 50+ native Web Components and services that can help you build modern web applications in JavaScript, Angular, AngularJS, React and Vue.

Here is a brief overview of what is included:
## Components
[Accordion](https://www.lidorsystems.com/products/web/studio/samples/#/accordion) - Displays a list of expandable groups in vertical layout
[AutoComplete](https://www.lidorsystems.com/products/web/studio/samples/#/autocomplete) - Represents a text box with a dropdown list where you can choose among suggested options
[Breadcrumb](https://www.lidorsystems.com/products/web/studio/samples/#/breadcrumb) - Used for navigation, where each item can have a link that is automatically separated
[Button](https://www.lidorsystems.com/products/web/studio/samples/#/button) - Represents a button
[ButtonGroup](https://www.lidorsystems.com/products/web/studio/samples/#/buttongroup) - Manages actions of multiple buttons arranged in group
[Calendar](https://www.lidorsystems.com/products/web/studio/samples/#/calendar) - Enables the user to select a date using a visual monthly calendar display
[Card](https://www.lidorsystems.com/products/web/studio/samples/#/card) - A flip card with two sides
[CheckBox](https://www.lidorsystems.com/products/web/studio/samples/#/checkbox) - Represents a check box
[ContextMenu](https://www.lidorsystems.com/products/web/studio/samples/#/contextmenu) - Represents a shortcut menu
[DatePicker](https://www.lidorsystems.com/products/web/studio/samples/#/datepicker) - Allows the user to select a date by using a drop-down calendar
[Dialog](https://www.lidorsystems.com/products/web/studio/samples/#/dialog) - Displays a modal window
[DockPanel](https://www.lidorsystems.com/products/web/studio/samples/#/dockpanel) - Create dynamic layouts with docking panels
[DropDown](https://www.lidorsystems.com/products/web/studio/samples/#/dropdown) - Represents a dropdown window
[DropDownButton](https://www.lidorsystems.com/products/web/studio/samples/#/dropdownbutton) - Represents a button with option to show a dropdown list
[DropDownFilter](https://www.lidorsystems.com/products/web/studio/samples/#/dropdownfilter) - A dropdown component with different filter oprerations
[Grid](https://www.lidorsystems.com/products/web/studio/samples/#/grid) - Displays tabular data sets
[GroupBox](https://www.lidorsystems.com/products/web/studio/samples/#/groupbox) - An expandable container with header and content
[Label](https://www.lidorsystems.com/products/web/studio/samples/#/label) - A fully customizable label with different alignments relative to attached element
[ListBar](https://www.lidorsystems.com/products/web/studio/samples/#/listbar) - Displays a list of expandable groups with items
[ListBox](https://www.lidorsystems.com/products/web/studio/samples/#/listbox) - Displays a collection of items with content in custom layouts
[ListScroller](https://www.lidorsystems.com/products/web/studio/samples/#/listscroller) - Displays a scrollable item list in horizontal or vertical layout
[ListView](https://www.lidorsystems.com/products/web/studio/samples/#/listview) - Displays a collection of items using several different views
[Loading](https://www.lidorsystems.com/products/web/studio/samples/#/loading) - Shows animations during loading progression
[Menu](https://www.lidorsystems.com/products/web/studio/samples/#/menu) - Allows you to create static or dynamic menus
[NumericUpDown](https://www.lidorsystems.com/products/web/studio/samples/#/numeric-updown) - Displays a numeric value and allows changes within a range of defined minimum and maximum values
[Paginator](https://www.lidorsystems.com/products/web/studio/samples/#/paginator) - Allows you to divide the content in multiple views in single page
[Panel](https://www.lidorsystems.com/products/web/studio/samples/) - Generic container with option for content alignment
[Popover](https://www.lidorsystems.com/products/web/studio/samples/#/popover) - Displays custom HTML content over specified element
[PivotGrid](https://www.lidorsystems.com/products/web/studio/samples/) - Summarizes the data of a more extensive table
[ProgressBar](https://www.lidorsystems.com/products/web/studio/samples/#/progressbar) - Visualize the progression of an operation
[RadioButton](https://www.lidorsystems.com/products/web/studio/samples/#/radiobutton) - Represents a radio button
[Rating](https://www.lidorsystems.com/products/web/studio/samples/#/rating) - Visualizes ratings
[Select](https://www.lidorsystems.com/products/web/studio/samples/#/select) - Allows you to select an item from a dropdown list
[SideBar](https://www.lidorsystems.com/products/web/studio/samples/#/sidebar) - Allows you to add a custom content panel that appears by sliding from page side over main content
[SidePanel](https://www.lidorsystems.com/products/web/studio/samples/#/sidepanel) - Allows you to add custom content panel that appears by sliding from page side
[SlideBar](https://www.lidorsystems.com/products/web/studio/samples/#/slidebar) - Animates slides composed of custom content
[Slider](https://www.lidorsystems.com/products/web/studio/samples/#/slider) - Allows changes to a numeric value within a range of defined minimum and maximum values
[SplitContainer](https://www.lidorsystems.com/products/web/studio/samples/#/splitcontainer) - Consists of two resizable panels separated by a splitter with tabs and command buttons
[SplitImage](https://www.lidorsystems.com/products/web/studio/samples/#/splitimage) - Allows you to visually compare differences between two images
[Splitter](https://www.lidorsystems.com/products/web/studio/samples/#/splitter) - Allows you to resize two block elements during run-time
[TabStrip](https://www.lidorsystems.com/products/web/studio/samples/#/tabstrip) - Consists of multiple scrollable panels that share the same space
[Toaster](https://www.lidorsystems.com/products/web/studio/samples/#/toaster) - Allows you to display notification messages (Toasts) with different alert levels
[Tooltip](https://www.lidorsystems.com/products/web/studio/samples/#/tooltip) - Adds a tooltip to an element
[TreeGrid](https://www.lidorsystems.com/products/web/studio/samples/#/treegrid) - Displays hierarchical data structures in multiple columns
[TreeList](https://www.lidorsystems.com/products/web/studio/samples/#/treelist) - Allows you to navigate through tree hierarchy showing only one list at a time
[TreeView](https://www.lidorsystems.com/products/web/studio/samples/#/treeview) - Displays hierarchical data structures
[Window](https://www.lidorsystems.com/products/web/studio/samples/#/window) - Movable and sizable windows
## Services
Common - Includes a set of common functions usable in most applications
Data - Includes a set of data related functions for different operations like: add/remove, search, etc.
DragDrop - Provides a way to use drag drop operations between custom components or elements.
Filter - Includes a set of related functions for filter operations
All components are inheritable, you can further extend functionalities of specific component by simple create a subclass of component main class.
## Dependencies
IntegralUI Web is built on top of [LitElement](https://github.com/Polymer/lit-element). All necessary files from that library are already included in the /external subfolder of this repository.
## DEMO
[Online QuickStart App](https://www.lidorsystems.com/products/web/studio/samples/) - An online demo of each component included
## Installation
Install the repository by running
```bash
npm install https://github.com/lidorsystems/integralui-web.git
```
or directly from NPM
```bash
npm i integralui-web
```
Note A detailed information is available here: [How to Use IntegralUI Web Components](https://www.lidorsystems.com/help/integralui/web-components/introduction/installation/). Explains how to setup and use components for each framework: Angular, React or Vanilla JavaScript.
In general, you need to open your application and add a reference to a component you want to use. For example, if you are using the IntegralUI TreeView component:
### Angular
```bash
import 'integralui-web/components/integralui.treeview';
```
### React
```bash
import IntegralUITreeViewComponent from 'integralui-web/wrappers/react.integralui.treeview.js';
```
Note Currently [ReactJS doesn't have full support for Web Components](https://custom-elements-everywhere.com/#react). Mainly because of the way data is passed to the component via attributes and their own synthetic event system. For this reason, you can use available wrappers located under /wrappers directory, which are ReactJS components that provide all public API from an IntegralUI component.
### Vanilla JavaScript
```bash
```
## Icons
Because of the web component specification that defines URLs to be always relative to the main document, the path that leads to the icons used by the IntegralUI Web components needs to be set. In addition you may also need to copy/paste the /icons folder in your application folder. Depending on the framework of your choosing this may differ.
### Angular
Follow these steps:
1. Copy/Paste the content of the integralui-web/icons folder under /assets/integralui-web/icons subfolder in your Angular application.
2. Set the resourcePath property of IntegralUI Web components to point to the location set in your /assets folder. In this case, for TreeView for example:
```bash
```
### React
Follow these steps:
1. Copy/Paste the content of the integralui-web/icons folder under /public/integralui-web/icons subfolder in your React application.
2. Set the resourcePath property of IntegralUI Web components to point to the location set in your /public folder. In this case, for TreeView for example:
```bash
```
### Vanilla JavaScript
Set the resourcePath property of IntegralUI Web components to point to /integralui-web/icons folder. In this case, for TreeView for example:
```bash
```
## QuickStart App
There is a demo application with source code that contains samples for each component included in the IntegralUI Web library. It can help you to get started quickly with learning about the components and write tests immediatelly.
From [IntegralUI Web - QuickStart](https://github.com/lidorsystems/integralui-web-quickstart) you can download a demo app for Angular, AngularJS, React and Vanilla JavaScript. A detailed information about each of these quick-start demos is available in ReadMe file, located in the root folder of the demo app.
## License Information
You may use this version for the limited purposes of demonstrations, trials or design-time evaluations.
This project has been released under the IntegralUI Web License, and may not be used except in compliance with the License.
A copy of the License should have been installed in the product's root installation directory or it can be found here: [License Agreement](https://www.lidorsystems.com/products/web/iui-web-license-agreement.pdf).
This SOFTWARE is provided "AS IS", WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.