Skip to content

Commit 4dd610c

Browse files
committed
Refactor ui-building-blocks folder
1 parent 1bcd955 commit 4dd610c

File tree

146 files changed

+56
-52
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

146 files changed

+56
-52
lines changed

docs/ff-concepts/adding-customization/cloud-functions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ Here are the step-by-step instructions to build such an example:
4848
### 1. Add page state variables
4949

5050
For this example, you'll need to set up two
51-
[Page State variables](../../resources/ui-building-blocks/pages/page-lifecycle.md#creating-a-page-state):
51+
[Page State variables](../../resources/ui/pages/page-lifecycle.md#creating-a-page-state):
5252

5353
1. **generatingImage (*****Type: Boolean*****)**: This is used to control the visibility of a
5454
loading indicator during the logo creation process. Its value is set to *True* before initiating the API call and switched to *False* once the logo generation is complete.

docs/ff-concepts/animations/page_transitions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Here, the transitions are recorded with the duration set to 1000ms to make the a
2727

2828
## Animate single navigate transition
2929

30-
To set a transition animation for a single navigate action, first, ensure that you have added a [**Navigate To**](../../resources/ui-building-blocks/pages/navigation#navigate-to-action) action and then select an animation from the **Transition Type** dropdown. By default, the animations use 300 milliseconds as the duration for which it plays but you can change it by specifying a value inside the **Duration** (ms) field.
30+
To set a transition animation for a single navigate action, first, ensure that you have added a [**Navigate To**](../../resources/ui/pages/navigation#navigate-to-action) action and then select an animation from the **Transition Type** dropdown. By default, the animations use 300 milliseconds as the duration for which it plays but you can change it by specifying a value inside the **Duration** (ms) field.
3131

3232
![single-navigate-transition-animation.avif](animation_gifs/single-navigate-transition-animation.avif)
3333

docs/ff-concepts/layout/building-layout.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ keywords: [FlutterFlow, Building Layout, Concepts]
99

1010
# Building Layout
1111

12-
In FlutterFlow, you build a page layout using Widgets. **Widgets**, such as [Text](../../resources/ui-building-blocks/widgets/built-in-widgets/text.md), [Buttons](#), [Images](#), and [Icons](#), are visible on the screen. Others, like [Containers](#), [Rows](#), [Columns](#), and [Stacks](#), are not directly visible but help arrange and position the visible elements on the page.
12+
In FlutterFlow, you build a page layout using Widgets. **Widgets**, such as [Text](../../resources/ui/widgets/built-in-widgets/text.md), [Buttons](#), [Images](#), and [Icons](#), are visible on the screen. Others, like [Containers](#), [Rows](#), [Columns](#), and [Stacks](#), are not directly visible but help arrange and position the visible elements on the page.
1313

1414
These widgets are categorized into four main types: [Layout Elements](#), [Base Elements](#),
1515
[Page Elements](#), and [Form Elements](#). To build a page, you combine different widgets from these categories to get the desired look and feel of your app.

docs/ff-concepts/layout/responsive-widgets/conditional-builder-widget.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ keywords: [FlutterFlow, ConditionalBuilder, Concepts]
88
---
99
# ConditionalBuilder
1010

11-
The `ConditionalBuilder` widget allows you to dynamically display different widgets based on certain conditions (either [single](/advanced-functionality/conditional-logic#single-condition) or [multiple](/advanced-functionality/conditional-logic#multiple-conditions-and-or)). Using this widget, you can define different conditions, each associated with a specific widget to be displayed when that condition is true. It's like having a switch that shows different things depending on what's happening in your app.
11+
The `ConditionalBuilder` widget allows you to dynamically display different widgets based on certain conditions (either [single](../../../resources/control-flow/functions/conditional-logic.md#single-condition) or [multiple](../../../resources/control-flow/functions/conditional-logic.md#multiple-conditions-andor)). Using this widget, you can define different conditions, each associated with a specific widget to be displayed when that condition is true. It's like having a switch that shows different things depending on what's happening in your app.
1212

1313
For example, displaying different charts based on user roles. For team members, an individual progress chart can be shown. Team leads can view the overall progress of the entire team, while project managers can see over project progress chart. Just like the below:
1414

@@ -20,11 +20,11 @@ To add the `ConditionalBuilder` widget to your app:
2020

2121
1. Add the **ConditionalBuilder** widget (from the **Base Elements**) to where you want to display dynamic widgets.
2222

23-
2. Move to the **Properties Panel** **>** **Conditional Builder Properties,** andUnder the **First Condition**, provide the **IF** [condition](/advanced-functionality/conditional-logic) by clicking on **UNSET**.
23+
2. Move to the **Properties Panel** **>** **Conditional Builder Properties,** andUnder the **First Condition**, provide the **IF** [condition](../../../resources/control-flow/functions/conditional-logic.md) by clicking on **UNSET**.
2424
3. Now, besides the **THEN**, click **Empty**. This will automatically select the **IF** widget in the widget tree. Inside that, add a widget that you want to display if this condition is true.
2525
4. To add one more condition-based widget, click on the "+" button, add a condition for the **ELSE IF** section, and add a widget inside the **Else If** widget in the widget tree.
2626
5. If none of the conditions are satisfied, add a default widget to display inside the **Else** widget.
27-
6. Use the **Show In UI Builder** option to see that particular widget in the [canvas area](/getting-started/ui-builder/canvas-area). You can see only one widget at a time.
27+
6. Use the **Show In UI Builder** option to see that particular widget in the [canvas area](../../../intro/ff-ui/canvas.md). You can see only one widget at a time.
2828

2929
<div class="video-container"><iframe src="https://www.loom.
3030
com/embed/fe8edb48bdf744abab13f3ba7f925c5c?sid=85533669-195d-4f5e-aeae-029ceee40cb5" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></div>

docs/ff-concepts/state-management/generated-code.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ Additionally, they provide space for action blocks, which are a set of actions t
2424

2525
## Page State
2626

27-
Variables used exclusively within a pagesuch as a text field validator or the value of a checkboxare stored in the Model of each page. These variables can be accessed by other component children on the same page. For instance, on a page with a form, tapping a button in one component may need to access the value of a text field in a different component.
27+
[Variables](../../resources/ui/pages/page-lifecycle.md) used exclusively within a pagesuch as a text field validator or the value of a checkboxare stored in the `Model` of each page. These variables can be accessed by other component children on the same page. For instance, on a page with a form, tapping a button in one component may need to access the value of a text field in a different component.
2828

29-
Variables within a page are tracked through StatefulWidgets and are encapsulated into that page’s Model.
29+
Variables within a page are tracked through `StatefulWidget` and are encapsulated into that page’s Model.
3030

3131
## Component State
3232

33-
Similar to page state, component variables are accessible within the component where they are defined. Each component has a corresponding Model and Widget class. Variables may be passed in from their parent as parameters. Additionally, you can access component state values from its parent Page widget.
33+
Similar to page state, [**Component State variables**](../../resources/ui/components/custom-components/component-lifecycle.md) are accessible within the component where they are defined. Each component has a corresponding `Model` and `Widget` class. Variables may be passed in from their parent as parameters. Additionally, you can access component state values from its parent Page widget.
3434

3535
This accessibility is possible because the Model of a component is instantiated within the parent Page model. It utilizes the Provider method `context.read()`, which returns any existing model in the tree before instantiating a new one. Thus, any updates to the state in the component model will reflect in the parent’s instance of that component model.
3636

docs/ff-concepts/state-management/state-management.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,17 @@ In FlutterFlow, there are a few types of state variables that you can create:
2424

2525
### Creating State Variables
2626
- To create an **App State variable**, refer to this **[guide](../../resources/data-representation/app-state.md#create-app-state-variable)**.
27-
- To create a **Page State variable**, refer to this [**guide**](../../resources/ui-building-blocks/pages/page-lifecycle.md#creating-a-page-state).
28-
- To create a **Component State variable**, refer to this [**guide**](../../resources/ui-building-blocks/components/user-defined-components/component-lifecycle.md#creating-a-component-state).
27+
- To create a **Page State variable**, refer to this [**guide**](../../resources/ui/pages/page-lifecycle.md#creating-a-page-state).
28+
- To create a **Component State variable**, refer to this [**guide**](../../resources/ui/components/custom-components/component-lifecycle.md#creating-a-component-state).
2929

3030
Note: Users cannot create **widget state variables**. These are automatically exposed by FlutterFlow when a Form widget is used.
3131

3232

3333

3434
### Updating State Variables
3535
- To update an **App State variable**, refer to this **[guide](../../resources/data-representation/app-state.md#update-app-state-action)**.
36-
- Refer to the [**Page Lifecycle**](../../resources/ui-building-blocks/pages/page-lifecycle.md) guide to learn about updating **[Page State variables](../../resources/ui-building-blocks/pages/page-lifecycle.md#update-page-state-action)**.
37-
- Refer to the [**Component Lifecycle**](../../resources/ui-building-blocks/components/user-defined-components/component-lifecycle.md) guide to learn about updating **[Component State variables](../../resources/ui-building-blocks/components/user-defined-components/component-lifecycle.md#update-component-state-action)**.
36+
- Refer to the [**Page Lifecycle**](../../resources/ui/pages/page-lifecycle.md) guide to learn about updating **[Page State variables](../../resources/ui/pages/page-lifecycle.md#update-page-state-action)**.
37+
- Refer to the [**Component Lifecycle**](../../resources/ui/components/custom-components/component-lifecycle.md) guide to learn about updating **[Component State variables](../../resources/ui/components/custom-components/component-lifecycle.md#update-component-state-action)**.
3838

3939
<p></p>
4040

docs/ff-integrations/database/cloud-firestore/firestore-actions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ To do so:
274274
:::
275275

276276
Here is an example showing the
277-
[**Snackbar**](../../../resources/ui-building-blocks/pages/page-elements.md#show-snackbar-action)
277+
[**Snackbar**](../../../resources/ui/pages/page-elements.md#show-snackbar-action)
278278
message when the data
279279
changes in a collection.
280280

docs/ff-integrations/streaming/mux/integrate-mux.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,7 @@ To customize a button that allows you to start a stream:
440440
under the **Start Button Style** section.
441441

442442
3. To change the button's text, open the **Start Button Text** section and set the **Text**. You can
443-
also [customize the text](../../../resources/ui-building-blocks/widgets/widget-commonalities.md#styling-text) if
443+
also [customize the text](../../../resources/ui/widgets/widget-commonalities.md#styling-text) if
444444
needed.
445445

446446
4. To change the button's icon, open the **Start Button Icon** section and select the new icon. You
@@ -504,7 +504,7 @@ screen).
504504
To customize the duration indicator:
505505

506506
1. Open the **Duration Text Style** section
507-
and [change its text style](../../../resources/ui-building-blocks/widgets/widget-commonalities.md#styling-text).
507+
and [change its text style](../../../resources/ui/widgets/widget-commonalities.md#styling-text).
508508
2. To change the indicator appearance, open the **Duration Container** section and use the property
509509
such as **Background Color** and **Border Radius**.
510510

docs/intro/ff-ui/resource-hierarchy.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ The diagram below illustrates how a FlutterFlow app is structured.
1919
![FlutterFlow app part.avif](imgs/ff-app-part.avif)
2020

2121
1. **Project**: Represents the overall application you are building in FlutterFlow. It encompasses all the other elements listed below and serves as the container for your entire app development effort within FlutterFlow. Learn more about creating a project [here](../../resources/projects/how-to-create-find-organize-projects#how-to-create-a-project).
22-
2. **Page**: Refers to individual screens within the FlutterFlow project. Each page represents a part of the user interface where users can interact with the app. Multiple pages collectively make up the complete user interface of your application. Learn more about pages in FlutterFlow [here](../../resources/ui-building-blocks/pages/pages#creating-a-page).
23-
3. **Built-in-widgets**: These are pre-designed widgets provided by FlutterFlow that you can use to build your app’s user interface. Built-in widgets simplify the development process by offering common UI elements such as buttons, text fields, sliders, etc. Learn more about widgets [here](../../resources/ui-building-blocks/overview#widgets).
22+
2. **Page**: Refers to individual screens within the FlutterFlow project. Each page represents a part of the user interface where users can interact with the app. Multiple pages collectively make up the complete user interface of your application. Learn more about pages in FlutterFlow [here](../../resources/ui/pages/pages#creating-a-page).
23+
3. **Built-in-widgets**: These are pre-designed widgets provided by FlutterFlow that you can use to build your app’s user interface. Built-in widgets simplify the development process by offering common UI elements such as buttons, text fields, sliders, etc. Learn more about widgets [here](../../resources/ui/overview#widgets).
2424
4. **Component**: A component in FlutterFlow is a reusable UI block that can be used across different pages within the project. Components are useful for maintaining consistency and reducing redundancy in the app design, as the same component (like a custom dialog box) can be inserted wherever needed. Learn more about creating a component [here](#).
2525
5. **Design System**: This refers to a set of standards for design within your FlutterFlow project. A design system in FlutterFlow includes predefined styles that ensure visual consistency throughout the app. Learn more about design system [here](#).
2626

@@ -31,7 +31,7 @@ If you are coming from Flutter, it is beneficial for you to understand the Flutt
3131
![Flutter to FlutterFlow app parts](imgs/flutter-to-flutterflow.avif)
3232

3333
1. **MyApp to Project**: In Flutter, `MyApp` typically represents the root of your application, where you set up routes and other global configurations. In FlutterFlow, the equivalent is the "Project," which encompasses the entire application you are building, including its configurations and settings. Learn more about creating a project [here](../../resources/projects/how-to-create-find-organize-projects#how-to-create-a-project).
34-
2. **MyPage to Page**: `MyPage` in Flutter represents a specific screen in the app. Similarly, In FlutterFlow, each "Page" corresponds to a screen, where you build the layout and functionality specific to that page of the project. Learn more about pages in FlutterFlow [here](../../resources/ui-building-blocks/pages/pages#creating-a-page).
35-
3. **Column, Button, Text to Built-in widgets**: In FlutterFlow, widgets are categorized under "Built-in widgets," which users can drag and drop onto their canvas to build the UI. Learn more about widgets [here](../../resources/ui-building-blocks/overview#widgets).
34+
2. **MyPage to Page**: `MyPage` in Flutter represents a specific screen in the app. Similarly, In FlutterFlow, each "Page" corresponds to a screen, where you build the layout and functionality specific to that page of the project. Learn more about pages in FlutterFlow [here](../../resources/ui/pages/pages#creating-a-page).
35+
3. **Column, Button, Text to Built-in widgets**: In FlutterFlow, widgets are categorized under "Built-in widgets," which users can drag and drop onto their canvas to build the UI. Learn more about widgets [here](../../resources/ui/overview#widgets).
3636
4. **Custom widget to Component**: `CustomWidget` in Flutter indicates user-defined widgets that serve specific functions not covered by built-in widgets. FlutterFlow translates this into "Component" allowing you to create and use custom components within your projects. Learn more about creating a component [here](#).
3737
5. **Theme/style constants to Design System**: In Flutter, theme and style constants are used to ensure consistent styling across an app. FlutterFlow uses a "Design System" to manage and apply uniform styles and themes throughout the application. Learn more about design system [here](#).

docs/intro/ff-ui/widget-palette.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ From the Widgets tab, you can access all standard FlutterFlow widgets. They are
1919

2020
## 2. Components
2121

22-
Components are widgets with certain functionalities that can be reused throughout your app. They are constructed from either standard or custom widgets. Once you have created a [component](../../resources/ui-building-blocks/components/user-defined-components/getting-started.md) or [custom widget](../../ff-concepts/adding-customization/custom-widgets.md), you can access it from here.
22+
Components are widgets with certain functionalities that can be reused throughout your app. They are constructed from either standard or custom widgets. Once you have created a [component](../../resources/ui/components/custom-components/getting-started.md) or [custom widget](../../ff-concepts/adding-customization/custom-widgets.md), you can access it from here.
2323

2424
## 3. Templates
2525

0 commit comments

Comments
 (0)