ToolJet/docs/versioned_docs/version-2.50.0-LTS/widgets/kanban-board.md
Abhinaba Adhikari 01e2955292
Fix and add more templates (#11510)
* fix/10900-textarea

* Update steps.md

Made necessary formatting changes to docs/docs/widgets/steps.md file

* Update steps.md in versioned docs

Made necessary changes to steps.md in 2.50.0 LTS versioned docs

* Updated the documentation for the Link Component

* fix: fx bold

* Update link.md

* Update link.md

* Update textarea.md

* Update textarea.md

* [docs]: Fix documentation for the map component (#11160)

* [docs]: Fix documentation for pagination component (#11145)

* [docs]: Fix documentation for color picker component (#11105)

* Update color-picker.md

* Update color-picker.md

* Update color-picker.md

* Update color-picker.md

* Update color-picker.md

* Update color-picker.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for the Date-Range Picker Component (#11020)

* updated ToolJet/docs/docs/widgets/date-range-picker.md

* updated  ToolJet/docs/versioned_docs/version-2.50.0-LTS/widgets/date-range-picker.md

* removed paddingbottom and renaming widget

* Update date-range-picker.md

* Update date-range-picker.md

* Update date-range-picker.md

* Update date-range-picker.md

* Update date-range-picker.md

* Update date-range-picker.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for the Button Component (#11073)

* chore: replaced `fx` to **fx**, removed padding-bottom from h2(## created) div, updated content for Event Table events description in button.md

* Update button.md

* Update button.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* fix : made required changes in radio-button-component (#11094)

* [docs]: Fix documentation for the Circular Progressbar Component (#11091)

* Update circular-progressbar.md

Update according to the instructions

* Update circular-progressbar.md

Updated according to the instructions

* Update circular-progressbar.md

added a divider before the styles section

* Update circular-progressbar.md

added a divider before the styles section

* Update circular-progressbar.md

* Update circular-progressbar.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for tabs components  (#11125)

* Update documentation for tabs component

Issue link - https://github.com/ToolJet/ToolJet/issues/11060

* Update documentation for ToolJet/docs/versioned_docs/version-2.50.0-LTS/widgets/tabs.md

* Update tabs.md

* Update tabs.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* #fixes Refactor InviteUsersForm component to support dark mode (#10869)

* [docs]: Fix documentation for Code Editor Component (#11027)

* docs: update component info and styling

* Revert "docs: update component info and styling"

This reverts commit d0e047a549.

* docs(revised): update component info and styling

* Update code-editor.md

* Update code-editor.md

* fix

* chore: typo and linting

* Update code-editor.md

* Update code-editor.md

* Update code-editor.md

* Update code-editor.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for the Bounded Box Component (#11110)

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

* Update bounded-box.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs] : Updated documentation for File Picker Component (#11174)

* Updated File-Picker

* Update file-picker.md

* Update file-picker.md

* Update file-picker.md

* Update file-picker.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Update the documentation for the Kanban Component (#11140)

* [docs]: Update the documentation for the Kanban Component

* Add more updates to the Kanban component documentation

* Update kanban-board.md

* Update kanban-board.md

* Update kanban-board.md

* Update kanban-board.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for the Star Rating Component (#11135)

* Update the documentation for the Star Rating Component

* Update star-rating.md

* Update star-rating.md

* Update star-rating.md

* Update star-rating.md

* Update star-rating.md

* Update star-rating.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Update the documentation for the Color Picker Component (#11191)

* Update documentation in color-picker.md

* Update documentation in versioned color-picker.md

* Update color-picker.md

* Update color-picker.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for the Image Component (#11138)

* fix issue 11124

* updated the ToolJet/docs/docs/widgets/image.md file

* [docs]: Fix documentation for Tree Select Component (#11166)

* Update Tree Select Component docs: formatting and content changes

* Update PR with requested changes: formatting updates and content revisions.

changed "padding-top" to "paddingTop" everywhere

* Update tree-select.md

* Update tree-select.md

---------

Co-authored-by: hahaanisha <120304035+anisha1910git@users.noreply.github.com>
Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for the QR Scanner Component (#11142)

* updating the docs to make it easier to follow

* 2.50.0-LTS i make chenges and 2.5.0 deleted the chenges what i made

* Exposed Variable changed on both versions

* Update qr-scanner.md

* Update qr-scanner.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* [docs]: Fix documentation for SVG Image component (#11144)

* Updated SVG Image documentation with layout and style changes

* Add divider before Styles section and update Layout and Style tables

* Make the fx bold in both versions

* Delete the svg-image-md file created accidentally

* Update svg-image.md

* Update svg-image.md

---------

Co-authored-by: Pratik Agrawal <pratik@tooljet.com>

* Template/utf 8 encoder and decoder (#11103)

* utf-8-encoder-and-decoder

* utf-8-encoder-and-decoder

* utf-8-encoder-and-decoder

* library-management-system (#11029)

* student-management-system (#11072)

* Added Template for Strong Password Generator (#11048)

* Template : json formatter created (#11218)

* Template/utf 8 encoder and decoder (#11103)

* utf-8-encoder-and-decoder

* utf-8-encoder-and-decoder

* utf-8-encoder-and-decoder

* library-management-system (#11029)

* student-management-system (#11072)

* Added Template for Strong Password Generator (#11048)

* Template: Created json formatter

* Delete server/templates/library-management-system/definition.json

* Delete server/templates/library-management-system/manifest.json

* Delete server/templates/strong-password-generator/definition.json

* Delete server/templates/strong-password-generator/manifest.json

* Delete server/templates/student-management-system/definition.json

* Delete server/templates/student-management-system/manifest.json

* Delete server/templates/utf-8-encoder-and-decoder/definition.json

* Delete server/templates/utf-8-encoder-and-decoder/manifest.json

---------

Co-authored-by: sahilborse18 <115134682+sahilborse@users.noreply.github.com>
Co-authored-by: Virender Bhambra <77726552+VirenderBhambra@users.noreply.github.com>
Co-authored-by: Aman Sharma <88098873+mnshrm@users.noreply.github.com>
Co-authored-by: Prashant Rai <prashant.2023ug1115@iiitranchi.ac.in>

* Template: Created SQL query formatter (#11219)

* Added a template to the Tooljet Community Templates, for issue #11006 (#11382)

Co-authored-by: Aspireve <steve18fernandes@gmail.com>

* Merge community templates 1.1, 1.3 into 1.4 (#11502)

* Setup patient records management template (#9620)

* Setup base64 encoder & decoder template (#9647)

* Setup base64 encoder & decoder template

* Fix category mismatch

* Added definition.json for base64 encoder-decoder template (#9653)

* Template/utf 8 encoder and decoder (#11103)

* utf-8-encoder-and-decoder

* utf-8-encoder-and-decoder

* utf-8-encoder-and-decoder

* library-management-system (#11029)

* feat(ConfigFiles): Add manifest and defintion files for digital asset management (#10830)

* student-management-system (#11072)

* Template: Created transporation logistics tracker (#10549)

* add transportation logistics tracker folder with definition.json

* add manifest.json to transportation logistics tracker

* Template: Created student attendance tracker (#10023)

* created:student-attendance-tracker

* app with TJDB

* fix:filter section visibility

* Community template: Course management for online courses #9925 (#10714)

* upload the template json file for course-management

* update the filter functionality

* Added Template for Strong Password Generator (#11048)

---------

Co-authored-by: Merchant Khalid <marchantkhalid7810@gmail.com>
Co-authored-by: sahilborse18 <115134682+sahilborse@users.noreply.github.com>
Co-authored-by: Virender Bhambra <77726552+VirenderBhambra@users.noreply.github.com>
Co-authored-by: Anas Khafaga <58850182+anasKhafaga@users.noreply.github.com>
Co-authored-by: Aman Sharma <88098873+mnshrm@users.noreply.github.com>
Co-authored-by: Kinski (Jiaxin) Wu <112212841+kinskiwu@users.noreply.github.com>
Co-authored-by: Ankit Yadav <89698311+AnkityadavIITR@users.noreply.github.com>
Co-authored-by: Prashant Rai <prashant.2023ug1115@iiitranchi.ac.in>

* Added placeholder image generator template (#11433)

* Added placeholder image generator template

* Fix code spacing

* Fix community templates and add more templates

* fix ui for placeholder image generator

* fix manifest file for placeholder image generator

* Add remaining templates

* remove patient records management template

* fix AWS access key value

* Optimise templates images

* Fix Applicant tracking system template

* Fix advanced data visualization template

* Fix some more templates

* Fix templates images

* Update package-lock.json

* Revert "Update package-lock.json"

This reverts commit 3bf5959550.

* Update template image names

* Update Library management system template

* Fix Library and student management templates

* Bump version to 3.1.5-ce

* Change version to 3.1.1-ce

---------

Co-authored-by: AkashJana18 <akashjana663@gmail.com>
Co-authored-by: Manbhav Sugla <manbhav234@gmail.com>
Co-authored-by: Joshua Jinu <116093853+joshua-jinu@users.noreply.github.com>
Co-authored-by: Pratik Agrawal <pratik@tooljet.com>
Co-authored-by: Avinash S <117369858+Avinashs7@users.noreply.github.com>
Co-authored-by: kabszac <69686216+kabszac@users.noreply.github.com>
Co-authored-by: Johnson Cherian <johnsonc.dev@gmail.com>
Co-authored-by: Sonali Singh <93927999+Sonali9737@users.noreply.github.com>
Co-authored-by: Rudraksh Gajanan Nalbalwar <126509395+rudrakshnalbalwar@users.noreply.github.com>
Co-authored-by: Aman Kumar <45187207+Namchi7@users.noreply.github.com>
Co-authored-by: Ishan Sawai <133170549+ishan657@users.noreply.github.com>
Co-authored-by: Deepanshu Yadav <yadavdeepanshu000@gmail.com>
Co-authored-by: Anas Younis <itsyunus102@gmail.com>
Co-authored-by: Ayyan Shaikh <ayyan.sameer.shaikh.eren@gmail.com>
Co-authored-by: Jon Pablo <38892213+JP-sDEV@users.noreply.github.com>
Co-authored-by: Bhojraj Lalit Narware <105192321+bhojrajnarwae@users.noreply.github.com>
Co-authored-by: Shreyas0410 <70795867+Shreyas0410@users.noreply.github.com>
Co-authored-by: Muskan Saxena <121862200+MuskanSaxena6@users.noreply.github.com>
Co-authored-by: Parth Dwivedi <99666524+Parth4git@users.noreply.github.com>
Co-authored-by: ChinoUkaegbu <77782533+ChinoUkaegbu@users.noreply.github.com>
Co-authored-by: Saurabh Gurde <128987288+SaurabhGurde@users.noreply.github.com>
Co-authored-by: hahaanisha <168823401+hahaanisha@users.noreply.github.com>
Co-authored-by: hahaanisha <120304035+anisha1910git@users.noreply.github.com>
Co-authored-by: Arnav Singha <102987879+ArnavSingha@users.noreply.github.com>
Co-authored-by: veesood <123954200+vroomvee@users.noreply.github.com>
Co-authored-by: sahilborse18 <115134682+sahilborse@users.noreply.github.com>
Co-authored-by: Virender Bhambra <77726552+VirenderBhambra@users.noreply.github.com>
Co-authored-by: Aman Sharma <88098873+mnshrm@users.noreply.github.com>
Co-authored-by: Prashant Rai <prashant.2023ug1115@iiitranchi.ac.in>
Co-authored-by: Abhishek-53 <abhishekvpatil1@gmail.com>
Co-authored-by: Niyatijain-9 <niyatijain9113@gmail.com>
Co-authored-by: Steve Fernandes <93852415+Aspireve@users.noreply.github.com>
Co-authored-by: Aspireve <steve18fernandes@gmail.com>
Co-authored-by: Merchant Khalid <marchantkhalid7810@gmail.com>
Co-authored-by: Anas Khafaga <58850182+anasKhafaga@users.noreply.github.com>
Co-authored-by: Kinski (Jiaxin) Wu <112212841+kinskiwu@users.noreply.github.com>
Co-authored-by: Ankit Yadav <89698311+AnkityadavIITR@users.noreply.github.com>
Co-authored-by: Vikash <106796672+vikashsprem@users.noreply.github.com>
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
2024-12-10 16:23:53 +05:30

142 lines
9.8 KiB
Markdown

---
id: kanban
title: Kanban
---
The **Kanban** component allows you to visually organize and prioritize your tasks with a transparent workflow. You can set the number of columns to display, enable/disable the add cards button, and bind data to the cards.
:::info Restricted components
Certain components are restricted from being placed within the **Card** and **Popout** of the **Kanban** component.
- **Card**: Calendar, Kanban, Form, Tabs, Modal, ListView, Container
- **Popout**: Calendar, Kanban
:::
<div style={{paddingTop:'24px'}}>
## Setting Card Data
To dynamically populate Kanban cards, you can use the `cardData` key.
For instance, you can set the `Data` property of a Text component on a card using the below code:
```js
{{cardData.title}}
// Replace title with the key in your data
```
</div>
<div style={{paddingTop:'24px'}}>
## Properties
:::info
- It is mandatory to provide an `id` for each column in the `column data` field. The `id` can be of type `string` or `number`.
- It is mandatory to provide an `id` and a `columnId` for each card in the `Card data` field. Both `id` and `columnId` can be of type `string` or `number`.
:::
| <div style={{ width:"100px"}}> Properties </div> | <div style={{ width:"100px"}}> Description </div> | <div style={{ width:"135px"}}> Expected Value </div> |
| :---------------- | :------------------------ | :---------------------------- |
| Column data | Enter the columns data - `id` and `title` in the form of array of objects or from a query that returns an array of objects. | `{{[{ "id": "c1", "title": "to do" },{ "id": "c2", "title": "in progress" },{ "id": "c3", "title": "Completed" }]}}` or `{{queries.xyz.data}}`. |
| Card data | Enter the cards data - `id`, `title` and `columnId` in the form of array of objects or from a query that returns an array of objects. | `{{[{ id: "r1", title: "Title 1", description: "Description 1", columnId: "c1" },{ id: "r2", title: "Title 2", description: "Description 2", columnId: "c2" },{ id: "r3", title: "Title 3", description: "Description 3",columnId: "c3" }]}}` or `{{queries.abc.data}}`. |
| Card width | Set the width of the card. | This property expects a numerical value. By default, the value is set to `{{302}}`. |
| Card height | Set the width of the card. | This property expects a numerical value. By default, the value is set to `{{100}}`. |
| Enable add card | This property allows you to show or hide the **+Add Cards** button on the Kanban. | By default its enabled, you can programmatically set value to `{{true}}` or `{{false}}` to enable/disable button by clicking on the **fx** next to it. |
| Show delete button | This property allows you to show or hide the **Drop here to delete cards** section at the bottom of the Kanban. | By default its enabled, you can programmatically set value to `{{true}}` or `{{false}}` to enable/disable button by clicking on the **fx** next to it. |
</div>
<div style={{paddingTop:'24px'}}>
## Events
To add an event, click on the component handle to open the component properties on the right sidebar. Go to the **Events** section and click on **Add handler**.
| <div style={{ width:"100px"}}> Event </div> | <div style={{ width:"100px"}}> Description </div> |
| :-------------------| :----------------|
| On Update | On update event is triggered whenever the card data (id, title, description, or columnID) is updated using the component specific actions. |
| On add card click | This event is triggered whenever the **Add card** button on the Kanban is clicked. |
| Card removed | This event is triggered whenever the card is **deleted** from the Kanban by dragging it into the bottom delete box or using component specific action. |
| Card added | This event is triggered whenever a card is **added** on the Kanban using the component specific action. |
| Card moved | This event is triggered whenever the card's position is changed on the Kanban or using the component specific action. |
| Card selected | This event is triggered whenever a card is clicked to open the modal. |
Just like any other event on ToolJet, you can set multiple handlers for any of the above mentioned events.
:::info
Check [Action Reference](/docs/category/actions-reference) docs to get the detailed information about all the **Actions**.
Check the **[Component Specific Action](#component-specific-actions-csa)** available for Kanban.
:::
</div>
<div style={{paddingTop:'24px'}}>
## Exposed Variables
| <div style={{ width:"100px"}}> Variable </div> | <div style={{ width:"135px"}}> Description </div> | <div style={{ width:"135px"}}> How To Access </div> |
| :------------- | :----------------- | :---------------- |
| updatedCardData | The `updatedCardData` variable will hold the latest values of all the cards in the Kanban. This variable won't have any values. | It will have values only when any action on any of the card is performed like when the card is moved, added, deleted, or updated. |
| lastAddedCard | The variable `lastAddedCard` holds the values of the last added card. It holds the following data - `id`, `title`, `description` and `columnId` of the last added card. | Get the values using `{{components.kanban1.lastAddedCard.title}}`. |
| lastRemovedCard | The variable `lastRemovedCard` holds the properties of the card that has been recently deleted from the Kanban. It holds the following data - `id`, `title`, `description` and `columnId` of the recently deleted card. | Get the values using `{{components.kanbanboard1.lastRemovedCard.title}}`. |
| lastCardMovement | The variable `lastCardMovement` holds the properties of the card that has been recently moved from its original position. It holds the following data - `originColumnId`, `destinationColumnId`, `originCardIndex`, `destinationCardIndex` and an object `cardDetails` which includes `id`, `title`, `description` and `columnId` of the moved card. | Get the values using `{{components.kanbanboard1.lastCardMovement.cardDetails.title}}` or `{{components.kanbanboard1.lastCardMovement.destinationCardIndex}}`. |
| lastSelectedCard | The variable `lastSelectedCard` holds the `id`, `title`, `columnId`, and `description` of the last selected(clicked to view) card on the Kanban. | Get the values using `{{components.kanban1.lastSelectedCard.columnId}}`. |
| lastUpdatedCard | The variable `lastUpdatedCard` holds the `id`, `title`, `description`, and `columnId` of the last updated card(using component specific action). | Get the values using `{{components.kanban1.lastUpdatedCard.columnId}}`. |
| lastCardUpdate | The variable `lastCardUpdate` holds the old an new values of the property that has been changed in the card(using component specific action). | Get the values using `{{components.kanban1.lastCardUpdate[0].title.oldValue}}`. |
</div>
<div style={{paddingTop:'24px'}}>
## Component Specific Actions (CSA)
Following actions of Kanban component can be controlled using the component specific actions(CSA):
| <div style={{ width:"100px"}}> Actions </div> | <div style={{ width:"135px"}}> Description </div> | <div style={{ width:"135px"}}> How To Access </div> |
| :-------------- | :----------------- | :--------------- |
| updateCardData | Update the card data of Kanban component via a component-specific action within any event handler. | Employ a RunJS query to execute component-specific actions such as `components.kanban1.updateCardData('c1', {title: 'New Title'})`. |
| moveCard | Move a card from one column to other column on the kanban via a component-specific action within any event handler. | Employ a RunJS query to execute component-specific actions such as `await components.kanban1.moveCard('card id,'column id')` ex: `await components.kanban1.moveCard('c1','r2')`. |
| addCard | Add a card onto the kanban via a component-specific action within any event handler. | Employ a RunJS query to execute component-specific actions such as `await components.kanban1.addCard('c1', {title: 'New Title'})`. |
| deleteCard | Delete a card from the kanban via a component-specific action within any event handler. | Employ a RunJS query to execute component-specific actions such as `await components.kanban1.deleteCard('card id')` ex: `await components.kanban1.deleteCard('c2')`. |
</div>
<div style={{paddingTop:'24px'}}>
## General
### Tooltip
A Tooltip is often used to specify extra information about something when the user hovers the mouse pointer over the component.
Under the <b>General</b> accordion, you can set the value in the string format. Now hovering over the component will display the string as the tooltip.
</div>
<div style={{paddingTop:'24px'}}>
## Devices
| <div style={{ width:"100px"}}> Property </div> | <div style={{ width:"100px"}}> Description </div> | <div style={{ width:"135px"}}> Expected Value </div> |
| :------------ | :------------ | :-------------- |
| Show on desktop | Makes the component visible in desktop view. | You can set it with the toggle button or dynamically configure the value by clicking on **fx** and entering a logical expression. |
| Show on mobile | Makes the component visible in mobile view. | You can set it with the toggle button or dynamically configure the value by clicking on **fx** and entering a logical expression. |
</div>
----
<div style={{paddingTop:'24px'}}>
## Styles
| <div style={{ width:"100px"}}> Style </div> | <div style={{ width:"100px"}}> Description </div> |
| :------------- | :------------------ |
| Disable | If disabled or set to `{{false}}` the component will be locked and becomes non-functional. By default, its disabled i.e. its value is set to `{{true}}`. |
| Visibility | This is to control the visibility of the component. If `{{false}}`/disabled the component will not visible after the app is deployed. By default, it's enabled (set to `{{true}}`). |
| Accent color | You can change the accent color of the column title by entering the Hex color code or choosing a color of your choice from the color picker. |
</div>