0.1.0 • Published 3 years ago

nested-choice v0.1.0

Weekly downloads
67
License
-
Repository
-
Last release
3 years ago

Nested Choice

Nested Choice is an angular component, for nested selections with a virtual offset, Angular Material is also built in.

picture alt

picture alt

 

Demo Stackblitz 📌

 

Get started 🚀

  • Install library
npm i nested-choice
  • Add the module to your application
import { NgModule } from "@angular/core";
import { AppComponent } from "./app.component";

import { NestedChoiceModule } from "nested-choice";

@NgModule({
  declarations: [AppComponent],
  imports: [
      ...
      NestedChoiceModule
      ...
    ],
  providers: [],
  bootstrap: [AppComponent],
})
export class AppModule {}
  • Basic example HTML component
<nested-choice-field
  [required]="true"
  [labelText]="'Select an option'"
  [placeholderSearch]="'Search'"
  [data]="data"
></nested-choice-field>
  • Template options example
<ng-template #optionTpl let-option> {{ option.label }} </ng-template>
  • Data example
data = [
  {
    label: "Company",
    icon: "",
    id: 1,
    children: [
      {
        label: "Process",
        icon: "",
        id: 3,
        children: [
          {
            label: "Home",
            icon: "home",
            id: 5,
          },
          {
            label: "Statistics",
            icon:
              "https://cdn4.iconfinder.com/data/icons/simplicio/128x128/piechart.png",
            id: 6,
          },
        ],
      },
      {
        label: "Human resources",
        icon:
          "https://cdn4.iconfinder.com/data/icons/top-search-7/128/_contact_book_contacts-_address_phonebook_human_list_profile_resources-256.png",
        id: 4,
      },
    ],
  },
  {
    label: "Financial",
    icon: "",
    id: 2,
  },
];

 

If you don't already have Angular Material installed in your project 📦

ng add @angular/material

 

API 🖇️

@Input list

PropertytypeDescription
labelKeystringIt allows customizing access to the label property, which can be defined by the user, the default value is label
idKeystringIt allows customizing access to the id property, which can be defined by the user, the default value is id
iconKeystringIt allows customizing access to the icon property, which can be defined by the user, the default value is icon
visibleOptionsnumberDetermine the number of elements visible on the virtual scroll, this property is required
dataArrayOption list
currentOptionobject, number, stringOption selected
optionTplTemplateRefshow list in custom template
requiredbooleanAdd the asterisk to the label
searchboxbooleanHide or show input search, the default value is true
placeholderSearchstringPlaceholder for input search, the default value is Search
textNoOptionsstringMessage to indicate that there are no options in the list, the default value is No options
labelTextstringText for show in floating label
widthnumber, stringWidth component, the default value id 200px
disabledbooleanDisable component
hiddenbooleanHidden component

 

@Output list

PropertytypeDescription
selectChangeEventEmitterNotify when selecting a modified or selected option for the first time, returns the object of the selected item
openedEventEmitterNotify when select list is opened
closedEventEmitterNotify when select list is closed

 

Built with 🛠️

 

Author ✒️

0.1.0

3 years ago

0.0.11

3 years ago

0.0.10

3 years ago

0.0.9

3 years ago

0.0.8

3 years ago

0.0.7

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.3

3 years ago

0.0.4

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago