--- id: code-editor title: Code Editor --- The **Code Editor** component lets users write and edit code directly within the app, with syntax highlighting and formatting for various programming languages. It's ideal for configuring scripts, editing JSON, or working with custom logic in a more developer-friendly interface. ## Properties |
Property
|
Description
|
Expected Value
| |:----------- |:----------- |:----------------- | | Placeholder | Specifies a hint that describes the expected value. | This field requires a `String` value. | | Mode | Specifies the language to be used for the code-editor.| See `info` below for the list of all supported languages. | | Show line number | Show or hides line numbers to the left of the editor.| This field expects a boolean value `{{true}}` or `{{false}}`. | :::info
Supporting all commonly used languages.
::: ## Component Specific Actions (CSA) The following actions of the component can be controlled using the component-specific actions (CSA), you can trigger it using an event or use a RunJS query. | Action | Description | How To Access | |:----------- |:----------- |:---------| | setValue | Sets the value of the code editor. |`components.codeeditor1.setValue('const getRandomNumber = () => Math.floor(Math.random() * 100) + 1')` | **Note:** If the setValue component specific action is executed using a JavaScript query, you will have to pass the code inside backticks. ## Exposed Variables | Variables | Description | How To Access | |:----------- |:----------- |:---------- | | value | Holds the current input value entered by the user in the code editor. | `{{components.codeeditor1.value}}` | ## Additional Actions |
Action
|
Description
|
Configuration Options
| |:------------------|:------------|:------------------------------| | Dynamic height | Automatically adjusts the component's height based on its content. | Enable/disable the toggle button or dynamically configure the value by clicking on **fx** and entering a logical expression. | | Tooltip | Provides additional information on hover. Set a display string. | String | ## Devices |
Property
|
Description
|
Expected Value
| |:---------- |:----------- |:----------| | 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. | ## Styles |
Styles
|
Description
|
Default Value
| |:----------- |:----------- |:----------- | | Visibility | Toggle on or off to control the visibility of the component. You can programmatically change its value by clicking on the **fx** button next to it. If `{{false}}` the component will not be visible after the app is deployed. | By default, it's set to `{{true}}` | | Disable | This is `off` by default, toggle `on` the switch to lock the component and make it non-functional. You can also programmatically set the value by clicking on the **fx** button next to it. If set to `{{true}}`, the component will be locked and becomes non-functional. | By default, its value is set to `{{false}}` | | Border radius | Modifies the border radius of the editor. The field expects only numerical value from `1` to `100`. | Default is `0`. | :::info Any property having **fx** button next to its field can be **programmatically configured**. :::