Skip to content

jmdisuanco/falconjs-component-flexgrid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

falconjs-component-flexgrid

12 Column Flex Grid Component for FalconJS

Getting Started

inside your FalconJS App directory

  • Install the package npm install --save falconjs-component-flexgrid or yard add falcon-js-component-flexgrid

  • Import inside your App

    import {Row, Col} from 'falconjs-component-flexgrid'
    import 'falconjs-component-flexgrid/dist/index.css'

Usage

Baseline

In Rows use the gutter property for spacing. In Columns use the span property to define the span of the column on the 12 grid

    <Row gutter={40} >
          <Col span={4}><div>1</div></Col>
          <Col span={4}><div>2</div></Col>
          <Col span={4}><div>3</div></Col>
    </Row>

Offset

Offset the position of the column to the right.

   <Row gutter={20}>
          <Col span={4} offset={4}> <div>Span 4 | Offset 4</div></Col>
          <Col span={4}><div>Span 4</div></Col>
   </Row>

Order

Sort the columns within <Row>

    <Row gutter={20}>
        <Col span={4} order={3}><div>C</div></Col>
        <Col span={4} order={2}><div>B</div></Col>
        <Col span={4} order={1}><div>A</div></Col>
    </Row>

Align and Distribute

justify to distribute the columns inside the row options: start, center, end, space-between, and space-around code snippet <Row justify="center">

vertical to vertical align the columnds inside the row options: top, middle, bottom code snippet <Row vertical="top">

Flexbox parameters can be passed to Row to align and distribute the columns inside it.

Vertical alignment
        <Row gutter={20} justify="center" vertical="bottom">
          <Col span={4} > <div class="tall">Tall</div></Col>
          <Col span={4} > <div class="medium">Medium</div> </Col>
          <Col span={4} > <div class="short">Short</div></Col>
        </Row>

        <Row gutter={20} justify="center" vertical="middle">
          <Col span={4} > <div class="tall">Tall</div></Col>
          <Col span={4} > <div class="medium">Medium</div> </Col>
          <Col span={4} > <div class="short">Short</div></Col>
        </Row> 

        <Row gutter={20} justify="center" vertical="top">
          <Col span={4} > <div class="tall">Tall</div></Col>
          <Col span={4} > <div class="medium">Medium</div> </Col>
          <Col span={4} > <div class="short">Short</div></Col>
        </Row>   

Distribute (Justify)
        <Row gutter={20} justify="start">
          <Col span={3} > <div class="tall">Tall</div></Col>
          <Col span={3} > <div class="medium">Medium</div> </Col>
          <Col span={3} > <div class="short">Short</div></Col>
        </Row>

        <Row gutter={20} justify="center">
          <Col span={3} > <div class="tall">Tall</div></Col>
          <Col span={3} > <div class="medium">Medium</div> </Col>
          <Col span={3} > <div class="short">Short</div></Col>
        </Row>

        <Row gutter={20} justify="end">
          <Col span={3} > <div class="tall">Tall</div></Col>
          <Col span={3} > <div class="medium">Medium</div> </Col>
          <Col span={3} > <div class="short">Short</div></Col>
        </Row>

        <Row gutter={20} justify="space-between">
          <Col span={3} > <div class="tall">Tall</div></Col>
          <Col span={3} > <div class="medium">Medium</div> </Col>
          <Col span={3} > <div class="short">Short</div></Col>
        </Row>

        <Row gutter={20} justify="space-around">
          <Col span={3} > <div class="tall">Tall</div></Col>
          <Col span={3} > <div class="medium">Medium</div> </Col>
          <Col span={3} > <div class="short">Short</div></Col>
        </Row>

Responsive

dimension xs, sm, md, lg, xl

        <Row gutter={20} justify="center" vertical="top">
          <Col xs={12} sm={12}  md={4} lg={6} xl={6}><div> xs-12 sm-12 md-4 lg-6 xl-6</div></Col>
          <Col xs={12} sm={12} md ={8} lg={6} xl={6}><div> sm-12 sm-12 md-8 lg-6 xl-6</div></Col>
        </Row>

*note: span and offset can be defined as a property of the query like so md={{ span:4, offset: 4}}

##Component Properties

Row

<Row>

Property Description Type Default Options
vertical Vertical alignment of the Columns inside the Row String start start, middle, botoom
gutter Spacing between columns Number 0 0 to ...
justify Horizontal distributionon the columns String start start,end,center, space-around, space-between

Col

<Col>

Property Description Type Default Note
span Number of Cells to be occupied by the Columns Number none setting setting the value to 0 would yield display:none to the Column
offset cell offset from the left of the Column Number 0
order column number in row Number node This will result to sorting of the Columns inside a particular row
xs <768px and also default setting, could be a span value or a object contain above props Number or Object media query
sm ≥768px, could be a span value or a object contain above props Number or Object media query
md ≥992px, could be a span value or a object contain above props Number or Object media query
lg ≥1200px, could be a span value or a object contain above props Number or Object media query
xl ≥1600px, could be a span value or a object contain above props Number or Object media query

Contributions and request are welcome!

Please Fork and submit PR

Testing

Prerequesite on testing install parcel to install npm i -g parcel-bundler

  • Clone this repo git clone https://github.com/jmdisuanco/falconjs-component-flexgid
  • cd falcon-js-component-flexgrid
  • npm start
  • the demo will be served on http://localhost:8000

Base on

This is based on FalconJS flex grid component is based on Abraztsov's ReactSimpleFlexGrid

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published