0.8.0 • Published 2 years ago

angular2-collapsible v0.8.0

Weekly downloads
422
License
MIT
Repository
github
Last release
2 years ago

angular-collapsible

Build Status

Angular collapsible component styled with Materialize CSS.

Demo

Compatibility chart

angular-collapsibleAngularNode.js
<=0.0.53>=2.x.x <5.x.x8.9.x
0.6.x>=6.x.x <8.x.x>=8.9.x
?>=8.x.x>=10.9.x

Dependencies

  • @angular/animations
    $ npm install @angular/animations --save
  • materialize-css
    $ npm install materialize-css --save
    open src/styles.css and add this line:
    @import '~materialize-css/dist/css/materialize.min.css';

Consuming the library

You can import the library in any Angular application by running:

$ npm install angular2-collapsible

and then from your Angular AppModule:

import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; // <-- import required BrowserAnimationsModule
import { NgModule } from '@angular/core';

import { AppComponent } from './app.component';

// Import your library
import { CollapsibleModule } from 'angular2-collapsible'; // <-- import the module

@NgModule({
  declarations: [
    AppComponent
  ],
  imports: [
    BrowserModule,
    BrowserAnimationsModule,  // <-- include required BrowserAnimationsModule
    CollapsibleModule // <-- include angular2-collapsible module
  ],
  bootstrap: [AppComponent]
})
export class AppModule { }

Once the library is imported, you can use its components and services in your Angular application:

<h1>{{title}}</h1>

<collapsible-list [type]="'accordion'">
  
  <collapsible-list-item>
    <collapsible-header class="waves-effect">
      Item #1
    </collapsible-header>
    <collapsible-body [expanded]="false">
      <p>Item #1 Body</p>
    </collapsible-body>
  </collapsible-list-item>

  <collapsible-list-item>
    <collapsible-header class="waves-effect">
      Item #2
    </collapsible-header>
    <collapsible-body [expanded]="true">
      <p>Item #2 Body</p>
    </collapsible-body>
  </collapsible-list-item>

</collapsible-list>

OR for a table with collapsible row details

<h1>{{title}}</h1>

<collapsible-table [type]="'accordion'" bordered>

  <thead>
    <collapsible-table-row>
      <th>Col #1</th>
      <th>Col #2</th>
      <th>Col #3</th>
    </collapsible-table-row>
  </thead>

  <tbody>
    <collapsible-table-row [detail]="detail1">
      <td>Cell(0,0)</td>
      <td>Cell(0,1)</td>
      <td>Cell(0,2)</td>
    </collapsible-table-row>
    <collapsible-table-row-detail #detail1>
      <table>
        <tr>
          <td width="75%">Row #1 Detail #1</td>
          <td>Row #1 Detail #2</td>
        </tr>
      </table>
    </collapsible-table-row-detail>

    <collapsible-table-row [detail]="detail2">
      <td>Cell(1,0)</td>
      <td>Cell(1,1)</td>
      <td>Cell(1,2)</td>
    </collapsible-table-row>
    <collapsible-table-row-detail #detail2>
      <p>Row #2 Detail</p>
    </collapsible-table-row-detail>

  </tbody>

</collapsible-table>

Options

OptionTypeDefault valueDescription
type{ 'accordion' | 'expandable' }'accordion'The type of the collapsible list: 'accordion' or 'expandable'

Collapsible list options

Collapsible table options

OptionTypeDefault valueDescription
borderedbooleanfalseMakes the table bordered
borderedHorizontallybooleanfalseMakes the table bordered horizontally only
borderedVerticallybooleanfalseMakes the table bordered vertically only
stripedbooleanfalseMakes the table striped
stripedOddColorstring'rgba(242,242,242,0.8)'A color of an odd striped row
stripedOddTextColorstring'black'A text color of an odd striped row
stripedEvenColorstring'transparent'A color of an even striped row
stripedEvenTextColorstring'black'A text color of an even striped row
highlightbooleanfalseHighlight table rows on mouse hover
highlightColorstring'rgba(222,222,222, 0.8)'A color of a highlighted row
highlightTextColorstring'black'A text color of a highlighted row
activeColorstring'rgba(212,212,212, 0.8)'A color of an active row
activeTextColorstring'black'A text color of an active row
centeredbooleanfalseCenter align all the text in the table
TODO: responsivebooleanfalseMakes the table horizontally scrollable on smaller screen widths
selectbooleanfalseAllows to select rows
selectMultipleRowsbooleanfalseAllows to multiple rows
selectColorstring'rgba(212,212,212, 0.8)'Allows to multiple rows
selectTextColorstring'black'A text color of a selected row
allowDeselectingRowsbooleanfalseAllows deselecting selected rows
allowKeyboardNavigationbooleantrueAllows navigation between table rows using arrow keys
noTextSelectbooleanfalseDisables user select withing the table

License

MIT © Dmitrii Serikov

0.8.0

2 years ago

0.6.1

5 years ago

0.6.0

5 years ago

0.0.53

6 years ago

0.0.52

6 years ago

0.0.51

6 years ago

0.0.50

6 years ago

0.0.49

6 years ago

0.0.48

6 years ago

0.0.47

6 years ago

0.0.46

6 years ago

0.0.45

6 years ago

0.0.44

6 years ago

0.0.43

6 years ago

0.0.42

6 years ago

0.0.41

7 years ago

0.0.40

7 years ago

0.0.39

7 years ago

0.0.38

7 years ago

0.0.37

7 years ago

0.0.36

7 years ago

0.0.35

7 years ago

0.0.34

7 years ago

0.0.33

7 years ago

0.0.32

7 years ago

0.0.31

7 years ago

0.0.30

7 years ago

0.0.29

7 years ago

0.0.28

7 years ago

0.0.27

7 years ago

0.0.26

7 years ago

0.0.25

7 years ago

0.0.24

7 years ago

0.0.23

7 years ago

0.0.22

7 years ago

0.0.21

7 years ago

0.0.20

7 years ago

0.0.19

7 years ago

0.0.18

7 years ago

0.0.17

7 years ago

0.0.16

7 years ago

0.0.15

7 years ago

0.0.14

7 years ago

0.0.12

7 years ago

0.0.11

7 years ago

0.0.10

7 years ago

0.0.9

7 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago

0.0.5

7 years ago

0.0.4

7 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago