/integralui-treeview

IntegralUI TreeView for Angular - Includes TreeView and other common UI components

Primary LanguageCSSOtherNOASSERTION

IntegralUI TreeView for Angular, v19.3

IntegralUI TreeView is a library built on top of Angular 8 framework. It consists of TreeView and other common components, directives and services that can help you build modern web applications.

Note The TreeView and other common components are also part of the IntegralUI Web product package.

Here is a brief overview of what is included:

Components

AutoComplete - Represents a text box with a dropdown list where you can choose among suggested options<

Breadcrumb - Used for navigation, where each item can have a link that is automatically separated

Button - Represents a button

Calendar - Enables the user to select a date using a visual monthly calendar display

CheckBox - Represents a check box

ComboBox - Advanced version of standard ComboBox element

DatePicker - Allows the user to select a date by using a drop-down calendar

Dialog - Displays a modal window

ListScroller - Displays a scrollable item list in horizontal or vertical layout

NumericUpDown - Displays a numeric value and allows changes within a range of defined minimum and maximum values

Paginator - Allows you to divide the content in multiple views in single page

ProgressBar - Visualize the progression of an operation

RadioButton - Represents a radio button

Rating - Visualizes ratings

Slider - Allows changes to a numeric value within a range of defined minimum and maximum values

Splitter - Allows you to resize two block elements during run-time

Toolbar - Displays a collection of different tool items and editors in one line

TreeView - Displays hierarchical data structures

Directives

DropDown - Represents a dropdown window

Frame - Places a grip handle that allows you to resize a container during run-time

Popover - Displays custom HTML content over specified element

Range - Allows you to set limits in which an element can resize during run-time

Resize - Detects changes to the element size and fires notifications when it happens

Tooltip - Adds a tooltip to an element

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. To get access to the TreeView component import the IntegralUITreeViewModule in your application. For other common components, import the IntegralUICommonModule.

Dependencies

IntegralUI TreeView requires only the following library:

Angular - v8.0 and above

DEMO

Online QuickStart App - An online demo of each component included

Installation

Install the repository by running

npm install https://github.com/lidorsystems/integralui-treeview.git

Open your application module and add a reference to the IntegralUIBaseListModule and IntegralUITreeViewModule

import { IntegralUIBaseListModule } from 'node_modules/integralui-treeview/bin/integralui/integralui.baselist.module';
import { IntegralUITreeViewModule } from 'node_modules/integralui-treeview/bin/integralui/integralui.treeview.module';

@NgModule({
  imports:      [ IntegralUIBaseListModule, IntegralUITreeViewModule ],
  declarations: [ AppComponent ],
  bootstrap:    [ AppComponent ]
})
export class AppModule { }

Note Common components like Button, Calendar, CheckBox etc. are included in IntegralUICommonModule. In order to use them, you also need to import the module from '~ ... integralui/integralui.common.module.ts' file. Depending on the component, the standard FormsModule from Angular framework may also be required to import.

Note In order to use a specific component or directive in your application, follow the guidelines from corresponding article. You can find a separate article available for each component or directive.

Angular CLI

After installation, in angular.json under styles section add this code line:

"node_modules/integralui-treeview/bin/integralui/css/integralui.treeview.module.css"

To apply a theme, also add code line for corresonding theme file. For example to use the Office theme, add this:

"node_modules/integralui-treeview/bin/integralui/themes/integralui.themes.office.css"

Note You can choose a theme from available themes located at '~ ... /integralui/themes' folder.

To include resources that are used by IntegralUI components in your project during build, you need to:

  1. Under assets folder create a subfolder named integralui
  2. Copy/Paste the node_modules/integralui-treeview/bin/integralui/resources folder to it
  3. Add the following code under assets section in angular.json file:
"src/assets/integralui/resources"

Then you can access these resources by specifing its location in your project CSS files. For example:

.some-class
{
    background-image: url(src/assets/integralui/resources/computer.png).
}

Note This is required because Angular compiler cannot detect resources that are outside the /src section of your app. It is needed if you are using resources that are part of IntegralUI Web, in your application.

Creating Custom Styles for IntegralUI Components

When you create custom styles or changes to built-in CSS classes of IntegralUI components, placed for example within app.component.css file, make sure ViewEncapsulation is set to None. This allows to override default settings from corresponding component css file. For example:

app.component.ts

import { Component, ViewEncapsulation } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css'],
  encapsulation: ViewEncapsulation.None
})
export class AppComponent {
}

app.component.css

.iui-treeview
{
  width: 400px;
  height: 300px;
}

In this example, the TreeView component will have its width and height set from within the app.component.

Note Changes to ViewEncapsulation set to None is avoidable, if you create your own CSS style sheet and include it in angular.json file under styles section. Like it is explained above for general IntegralUI styles.

QuickStart App

There is a demo application with source code that contains samples for each component included. You can access this app from the IntegralUI Web repository. It can help you to get started quickly with learning about the components and write tests immediatelly.

In order to start this application, you only need to install the latest Angular library. Open the nodejs command prompt, go to application directory and type:

    npm install

After installation completes, start the application by typing:

    ng serve --open

The application will start displaying the main window with links to all components included. Each component window contains a demo and description about the component functionality. You can checkout the sample source code (located under integralui-web/quickstart/src/app/samples subfolder) for more information on the sample and component used.

Release Notes

This is Trial version of the product. All features are fully functional, except that each component displays a pop-up trial window.

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.

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.