Skip to content

Commit 49c9d8e

Browse files
authored
Merge branch 'main' into feature/custom-classes
2 parents af033f0 + fe6f40f commit 49c9d8e

File tree

19 files changed

+216
-83
lines changed

19 files changed

+216
-83
lines changed

docs/ff-concepts/animations/widget_animations.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ If you notice carefully, the items appear in a staggered fashion. This can be ac
208208

209209
Select the item in the list and add the Slide animation.
210210

211-
In the Delay property, open the variable menu and add a [code expression](../../resources/control-flow/functions/utility-functions.md#code-expressions) to calculate the delay value based on the item's index. For this example, we use the formula `[index] * 100`, where `index` represents the position of the item, and `100` is the delay in milliseconds. This means the first item will slide in after 100 ms, the second after 200 ms, and so on, creating a staggered animation effect.
211+
In the Delay property, open the variable menu and add a [inline function](../../resources/control-flow/functions/utility-functions.md#inline-function-code-expressions) to calculate the delay value based on the item's index. For this example, we use the formula `[index] * 100`, where `index` represents the position of the item, and `100` is the delay in milliseconds. This means the first item will slide in after 100 ms, the second after 200 ms, and so on, creating a staggered animation effect.
212212

213213
<div style={{
214214
position: 'relative',

docs/ff-concepts/design-system/design-system.md

Lines changed: 17 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -88,33 +88,27 @@ To add a design system from a library, start by creating the design system in a
8888

8989
## Import Figma Theme
9090

91-
You might use Figma to design your app and build it accordingly in our builder. If you have a lot of colors and text styles, importing them manually can take some time. You can now import the whole Figma theme, which includes the colors and text styles, directly into our builder.
91+
:::tip[PLANS]
92+
Import Figma Theme feature is available on the **Teams** plan and higher. Check our [**pricing plans**](https://flutterflow.io/pricing).
93+
:::
9294

93-
:::info
95+
You can bring your Figma design system directly into your FlutterFlow project. This streamlines the design-to-development process by automatically importing colors and typography from your Figma file, helping you maintain visual consistency and reduce manual effort.
9496

95-
Before you import the Figma theme, ensure you have access to the Figma design file and [**generate the access token**](https://help.figma.com/hc/en-us/articles/8085703771159-Manage-personal-access-tokens).
97+
To import a Figma theme into your FlutterFlow project, go to **Theme Settings > Design System** and click **Connect To Figma**. Authenticate your account and grant access to Figma. Once connected, paste your Figma file URL to fetch the theme.
9698

97-
:::
99+
You’ll see a list of all imported colors; start mapping them to your project colors. You can filter these colors by whether they’re mapped or unmapped, and you also have the option to bulk delete any imported colors. After that, you can customize your project typography using the imported text styles.
98100

99-
To import the Figma theme:
100-
101-
1. Open the **Theme Settings > Design System**.
102-
2. Click the **Import Figma Theme** button. This will open a new popup.
103-
3. Enter your **Figma File URL** and **Personal Access Token**. The *Personal access tokens* allow us to access all of your files and data in Figma.
104-
4. Click **Import Figma Theme**.
105-
1. Now, you'll see a list of colors from your Figma file, and here you can decide which one to keep. If everything looks good to you, Click **Import & Continue**.
106-
2. You can replace the current theme colors with new/imported ones. Click on any color, and the dropdown will display all imported colors. Click on the new color to replace it. When done, click **Save & Continue**.
107-
3. If you have custom text styling in your Figma file, it will be displayed here, and you can choose which one to import. Click **Import & Continue**.
108-
4. Replace any existing style with the new one and click **Save & Finish**.
109-
5. Finally, click **Finish & Close**.
101+
:::info
102+
All imported colors are accessible anytime under **Colors > Custom Colors**.
103+
:::
110104

111105
<div style={{
112106
position: 'relative',
113107
paddingBottom: 'calc(56.67989417989418% + 41px)', // Keeps the aspect ratio and additional padding
114108
height: 0,
115109
width: '100%'}}>
116110
<iframe
117-
src="https://demo.arcade.software/gEry2KO5BeoZkflYHm8f?embed&show_copy_link=true"
111+
src="https://demo.arcade.software/84lqVC1ZDkq7EFFnCusm?embed&show_copy_link=true"
118112
title="Sharing a Project with a User"
119113
style={{
120114
position: 'absolute',
@@ -571,31 +565,13 @@ You can customize the following properties of each text style:
571565
- **Color** - Set the color of the text using either the color picker or by specifying a Hex value.
572566
- **Font Family** - You can change the Font Family for any style from here. Click here to set the font family from [*Google Fonts*](https://fonts.google.com/) or choose from the uploaded Custom Fonts. You can also choose whether this style is a *Primary* or *Secondary Font Family*.
573567

574-
<div style={{
575-
position: 'relative',
576-
paddingBottom: 'calc(56.67989417989418% + 41px)', // Keeps the aspect ratio and additional padding
577-
height: 0,
578-
width: '100%'}}>
579-
<iframe
580-
src="https://demo.arcade.software/JOD7EaZpTUgqzuvLT876?embed&show_copy_link=true"
581-
title=""
582-
style={{
583-
position: 'absolute',
584-
top: 0,
585-
left: 0,
586-
width: '100%',
587-
height: '100%',
588-
colorScheme: 'light'
589-
}}
590-
frameborder="0"
591-
loading="lazy"
592-
webkitAllowFullScreen
593-
mozAllowFullScreen
594-
allowFullScreen
595-
allow="clipboard-write">
596-
</iframe>
597-
</div>
598-
<p></p>
568+
You can also create fully custom text styles to match your design needs, going beyond the default styles like Display, Headline, or Title. Simply click the **+ Add Custom Text Style** button, a new text style will be added at the bottom, then edit the style name and customize the style properties.
569+
570+
![typography](imgs/typography.avif)
571+
572+
:::tip[PLANS]
573+
Custom Text Styles are available on the **Teams** plan and higher. Check our [**pricing plans**](https://flutterflow.io/pricing).
574+
:::
599575

600576
#### Adding responsive text styles
601577

Binary file not shown.

docs/ff-integrations/payments/razorpay.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ Follow the steps below to add this action:
137137
3. Search and select the **Razorpay Payment** (under *Integrations*) action.
138138
4. Enter or use a variable for specifying the total amount under the **Amount** section. **Note** that the value should be specified in the currency's smallest unit.
139139
- For example, *$24.99* should be passed as *2499* (as a round-off integer; otherwise, it would be automatically rounded); similarly, for an amount of ₹120.00, 12000 should be passed.
140-
- Most probably, you'll specify this value from a variable. If you do so, you might need this [code expression](../../resources/control-flow/functions/utility-functions.md#code-expressions) to convert the total amount in the required format: `amount.toStringAsFixed(2).replaceAll(".", "");`
140+
- Most probably, you'll specify this value from a variable. If you do so, you might need this [inline function](../../resources/control-flow/functions/utility-functions.md#inline-function-code-expressions) to convert the total amount in the required format: `amount.toStringAsFixed(2).replaceAll(".", "");`
141141
5. Enter the **Currency Code** to be used for the amount, for example, *INR*, *USD*, *EUR*, or *BRL*. Make sure you enter a valid currency code; otherwise, the transaction won't go through. Download the complete [list of supported currencies](https://razorpay.com/docs/build/browser/assets/images/international-currency-list.xlsx).
142142
<p></p>
143143

docs/index.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,10 @@ import BranchIcon from '@site/static/icons/branch_New.png';
2222

2323
<FlutterFlowLogo></FlutterFlowLogo>
2424

25-
# Visual Development Platform
26-
FlutterFlow is a visual development platform that lets you build mobile, web, and desktop apps incredibly fast, without sacrificing quality or features.
25+
# Visual Development Environment
26+
FlutterFlow is a visual development environment that lets you build mobile, web, and desktop apps incredibly fast, without sacrificing quality or features.
27+
28+
<div class="video-container small"><iframe src="https://www.youtube.com/embed/gYOrgBrX4jM" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>
2729

2830
<InfoCards>
2931
<InfoCard title="Before You Begin" description="Ensure you meet system requirements and grasp technical concepts for smooth building in FlutterFlow." pagePath="/before-you-begin/setup-flutterflow" />

docs/intro/ff-ui/toolbar.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,10 @@ _Connect GitHub Repo_, _Download Code_, and _Download APK_ features requires a [
265265

266266
6. **Open in VSCode**: This option lets you open your entire FlutterFlow project in a VS Code environment, offering a richer development experience. You’ll have real-time autocomplete and error detection, easier access to existing Flutter & Dart tooling, and the ability to leverage the AI ecosystem.
267267

268+
7. **Refactor Project**: This option opens your FlutterFlow project in a YAML-based file editor, allowing you to perform bulk edits more efficiently. You can search, edit, and replace values across multiple files—useful for renaming keys, updating data types, or migrating resources to a Library. Check out the [**Refactor Project**](../../resources/projects/refactor-project.md) documentation for more details.
269+
270+
271+
268272
## Share project
269273

270274
You can make a project public so that others can view and clone your project. Before you share your project, make sure to remove any sensitive information.

docs/resources/control-flow/backend-logic/api/soap-api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ You can now proceed to display the country list in *HomePage*. Here are the step
309309
<p></p>
310310

311311
4. On ListView, [generate dynamic children](../../../ui/widgets/composing-widgets/generate-dynamic-children.md) using the page state variable.
312-
5. The page state variable stores the country name and code as a single string (e.g., Australia - AT). To display the name and code separately in a *ListTile*, we can use a [code expression](../../../control-flow/functions/utility-functions.md#code-expressions). To display the country name, we can use `var1.split("-")[1].trim()`, where `var1` is the current item in the list. To display the country code, we can use the same expression and replace `[1]` with `[0]`.
312+
5. The page state variable stores the country name and code as a single string (e.g., Australia - AT). To display the name and code separately in a *ListTile*, we can use a [inline function](../../../control-flow/functions/utility-functions.md#inline-function-code-expressions). To display the country name, we can use `var1.split("-")[1].trim()`, where `var1` is the current item in the list. To display the country code, we can use the same expression and replace `[1]` with `[0]`.
313313

314314
<div style={{
315315
position: 'relative',

docs/resources/control-flow/backend-logic/api/streaming-api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ id: 2
356356
```
357357
The Server Sent Event Data JSON will be `null` because the data cannot be parsed as JSON.
358358

359-
You can fix this by using the following expression inside the [Code Expression](../../../control-flow/functions/utility-functions.md#code-expressions) to handle the `null` case:
359+
You can fix this by using the following expression inside the [Inline Function](../../../control-flow/functions/utility-functions.md#inline-function-code-expressions) to handle the `null` case:
360360

361361
```
362362
responseData ?? ''

docs/resources/control-flow/functions/utility-functions.md

Lines changed: 20 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,7 @@ FlutterFlow has the following built-in functions:
2121
* **Combine Text:** A built-in function that lets you concatenate strings, making it easy to join
2222
multiple text elements together seamlessly.
2323

24-
* **Code Expression:** This feature allows you to perform simple calculations and data
25-
manipulations
26-
quickly and efficiently.
24+
* **Inline Function:** This feature allows you to perform simple calculations and data manipulations quickly and efficiently.
2725

2826

2927

@@ -87,34 +85,28 @@ together, with the same text style applied to all of them. If you need to combin
8785
values with different text styles for each, consider using the **[RichText](../../ui/widgets/basic-widgets/text.md#richtext-widget)** widget.
8886
:::
8987

90-
## Code Expressions
9188

92-
Oftentimes, you may need to quickly format data, convert a data type from one form to another,
93-
or perform a simple calculation before setting the variable to a data source, such as a widget
94-
value source.
89+
## Inline Function (Code Expressions)
9590

96-
**Code Expression** built-in functions can help with
97-
these tasks. A code expression is a piece of code that combines operators, variables, and/or values
98-
to produce a result. It can be used for arithmetic and logical operations, among other tasks.
91+
:::info
92+
**Code Expressions** was renamed to **Inline Functions** starting from FlutterFlow 6.0 version.
93+
:::
9994

100-
To perform a code expression, open the Variable Setter dialog wherever it's possible to set a
101-
dynamic value and choose the values that will be part of the code expression.
95+
Often times, you may need to quickly format data, convert a data type from one form to another, or perform a simple calculation before setting the variable to a data source, such as a widget value source.
10296

103-
For example, we may want to quickly calculate the discount amount of a product where the discount is
104-
18% of the MRP of the product.
97+
Inline Function is a piece of code that combines operators, variables, and/or values to produce a result. It can be used for arithmetic and logical operations, among other tasks.
10598

106-
The expression would be `cost - (cost * discount)`.
99+
To add inline function, open the Set from Variable dialog wherever it's possible to set a dynamic value and choose the values that will be part of the inline function.
107100

108-
:::warning[Precedence of operations]
109-
Code expressions for math operations follow typical precedence (e.g., multiplication/division before
110-
addition/subtraction), but parentheses can change the order.
111-
:::
101+
For example, we may want to quickly calculate the discount amount of a product where the discount is 18% of the MRP of the product. The expression would be `cost - (cost * discount)`.
102+
103+
**Precedence of operations**
112104

113-
In this case, the variables we need are `cost` and `discount`.
105+
Inline Function for math operations follow typical precedence (e.g., multiplication/division before addition/subtraction), but parentheses can change the order.
114106

115-
So, we create two arguments in the **Code Expression** dialog where they hold the value of `cost`
116-
and `discount`, assign the data type for each of the arguments, and define the return type of the
117-
final value. In this case, the return type is a `double` since it holds the **subtotal** amount.
107+
In this case, the variables we need are `cost` and `discount`.
108+
109+
So, we create two arguments in the **Inline Function** dialog where they hold the value of `cost` and `discount`, assign the data type for each of the arguments, and define the return type of the final value. In this case, the return type is a `double` since it holds the **subtotal** amount.
118110

119111
<div style={{
120112
position: 'relative',
@@ -123,7 +115,7 @@ final value. In this case, the return type is a `double` since it holds the **su
123115
width: '100%'
124116
}}>
125117
<iframe
126-
src="https://demo.arcade.software/I6UcltVn7ssAIWmipeFY?embed&show_copy_link=true"
118+
src="https://demo.arcade.software/qM8kjAlMJl6WyH3tXN4X?embed&show_copy_link=true"
127119
title=""
128120
style={{
129121
position: 'absolute',
@@ -142,10 +134,9 @@ final value. In this case, the return type is a `double` since it holds the **su
142134
</iframe>
143135
</div>
144136

145-
Now you can write the code expression in the **Expression** field and click on **Check Errors** to
146-
see if the expression is valid. If it is valid, you will see the generated code for the same.
137+
Now you can write the inline function in the **Expression** field and click on **Check Errors** to see if the expression is valid. If it is valid, you will see the generated code for the same.
147138

148-
The arguments in a Code Expression can take the following properties:
139+
The arguments in a Inline Function can take the following properties:
149140

150141
| DataType | Supports Nullable | Supports List |
151142
|----------|-------------------|---------------|
@@ -172,12 +163,10 @@ Here are some common expressions you can use for your business logic:
172163

173164

174165

175-
176-
177166
## Custom Functions
178167

179-
You can also use custom functions to handle slightly more complex calculations or to process a wider range of data types that are not supported in Code Expression.
168+
You can also use custom functions to handle slightly more complex calculations or to process a wider range of data types that are not supported in Inline Function.
180169

181170
:::info
182171
Learn more about [**Custom Functions**](../../../ff-concepts/adding-customization/custom-functions.md).
183-
:::
172+
:::

docs/resources/control-flow/overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ There are different types of functions you can use in your app. Some examples in
6565
tasks, such as
6666
formatting
6767
data or performing calculations. In FlutterFlow, you can use
68-
[**Code Expression**](functions/utility-functions.md#code-expressions) for simple data
68+
[**Inline Function**](functions/utility-functions.md#inline-function-code-expressions) for simple data
6969
manipulation tasks or use the
7070
**[Combine Text](functions/utility-functions.md#combine-text)** built-in
7171
function to concatenate strings.

0 commit comments

Comments
 (0)