Skip to content

Commit 6dba7e2

Browse files
authored
Merge branch 'main' into fix/json-predefined-path
2 parents 6db9a32 + 76c4261 commit 6dba7e2

File tree

18 files changed

+391
-70
lines changed

18 files changed

+391
-70
lines changed

docs/accounts-billing/payments-billing.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ This section contains information on the payment methods we accept and how to ch
55

66
## Invoices
77
#### Can I Add A Tax ID (e.g. VAT) to my invoice?
8-
Unfortunately, at this time we are not able to process Tax IDs.
8+
If you need to include VAT in your invoices, please reach out to our support team at [email protected], and we’ll be happy to assist you with the process.
99

1010

1111
## Payment Methods

docs/ff-concepts/adding-customization/vscode-extension.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,72 @@ To delete a Custom Action or Widget, delete the associated file.
231231
### Adding New Dependencies
232232
You can add custom [pub.dev](https://pub.dev/) package dependencies with the `Dart: Add Dependency` command from the Visual Studio Code command palette. This will update the `pubspec.yaml` file.
233233

234+
## Using Flutter Version Management (FVM)
235+
If you want to manage Flutter versions with [**Flutter Version Management (FVM)**](https://fvm.app/), you need to install it and add it to your system’s PATH. Follow these steps to get started:
236+
237+
### Install FVM
238+
239+
To install **FVM**, run the following command in your terminal. This installs FVM globally using Dart’s package manager.
240+
241+
```
242+
dart pub global activate fvm
243+
```
244+
245+
### Add FVM to Your System’s PATH
246+
247+
After installation, you need to add the directory containing FVM’s executables to your **PATH variable** so that it can be accessed globally.
248+
249+
#### For macOS & Linux
250+
251+
1. Open the Terminal and run the following command. It adds the `~/.pub-cache/bin` directory to your system's `PATH` permanently by updating your `~/.zshrc` file. This ensures that the FVM installed in `~/.pub-cache/bin` is accessible from anywhere in the terminal.
252+
253+
```bash
254+
echo 'export PATH="$PATH":"$HOME/.pub-cache/bin"' >> ~/.zshrc # For Zsh
255+
echo 'export PATH="$PATH":"$HOME/.pub-cache/bin"' >> ~/.bashrc # For Bash
256+
```
257+
258+
2. Restart your terminal or run `source ~/.zshrc` (or `source ~/.bashrc`) to apply the changes.
259+
260+
#### For Windows
261+
262+
1. Locate the **FVM executable path**, typically:
263+
264+
```
265+
C:\Users\YourUsername\AppData\Local\Pub\Cache\bin
266+
```
267+
268+
2. Add this path to your **System’s PATH variable**:
269+
1. Open **System Properties****Advanced system settings**.
270+
2. Click **Environment Variables**.
271+
3. Under **System variables**, select **Path****Edit**.
272+
4. Click **New** and add the above path.
273+
5. Click **OK** and restart your terminal.
274+
275+
276+
### Verify the Installation
277+
278+
To check if FVM is correctly installed and accessible, run:
279+
280+
```bash
281+
fvm --version
282+
```
283+
284+
If this command prints the installed version of FVM, it means FVM is successfully installed and added to PATH.
285+
286+
287+
### Configure FVM in Your Flutter Project
288+
289+
Once FVM is installed, navigate to your Flutter project folder and set up FVM:
290+
291+
```bash
292+
cd your-flutterflow-project
293+
fvm init
294+
fvm install <flutter_version>
295+
fvm use <flutter_version>
296+
```
297+
298+
*(Replace `<flutter_version>` with the required Flutter version.)*
299+
234300

235301
## FAQs
236302
<details>
Binary file not shown.

docs/ff-concepts/navigation-routing/share-action.md

Lines changed: 4 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -9,54 +9,10 @@ keywords: [FlutterFlow, Share Action, Navigation, Concepts]
99

1010
# Share [Action]
1111

12-
Share Action can be used to send a text using the Android or iOS device's share dialog. You can send the text using email, message, or any other application present on the device that supports sharing functionality.
13-
14-
<figure>
15-
<img src="https://firebasestorage.googleapis.com/v0/b/ecommerceflow-docs/o/share-example.gif?alt=media&token=f902c889-56e0-4f40-9413-7e5852d5d8c2"></img>
16-
<figcaption class="centered-caption"></figcaption>
17-
</figure>
18-
19-
## Define Share Action
20-
21-
Go to your project page on FlutterFlow and follow the steps below to define an Upload Photo/Video Action to a widget:
22-
23-
1. Select the **widget** in which you want to set the Action.
24-
25-
2. Select the **Actions** from the Properties Panel (the right menu).
26-
27-
3. Click **+ Add Action** button.
28-
29-
4. Choose a gesture from the dropdown among ***On Tap****,* ***On Double Tap****,**or* **On Long
30-
Press**.
31-
32-
5. Select the **Action Type** as ***Share***.
33-
34-
6. Now, you need to specify a **URL/Text Value**. It can be set either by defining a **Specific
35-
Value** or by using **From Variable** to use a value stored inside a variable.
36-
- If you are using **Specific Value**, enter the text in the **Value** field.
37-
- If you are using **From Variable**, you need to select the **Source**.
38-
39-
Demo of defining Share Action using a **Specific Value** is as follows:
40-
41-
<img src="https://firebasestorage.googleapis.com/v0/b/ecommerceflow-docs/o/share-with-value.gif?alt=media&token=415cf039-dae7-4ee0-ad3c-c31a8c5c4a50"></img>
42-
43-
<p></p>
44-
45-
Alternatively, a demo of defining Share Action using **From Variable** option is as follows:
46-
47-
<p></p>
48-
49-
50-
<figure>
51-
<img src="https://firebasestorage.googleapis.com/v0/b/ecommerceflow-docs/o/share-with-variable.gif?alt=media&token=7d77df34-7c82-47fe-ba50-8eedf699c6ea"></img>
52-
<figcaption class="centered-caption"></figcaption>
53-
</figure>
54-
12+
The **Share Action** enables users to send text or URLs from your app using the native sharing capabilities of their device. This functionality allows users to share information through various applications installed on their devices, such as email, messaging apps, or social media platforms.
5513

5614
:::warning
57-
You won't be able to try out this Action using FlutterFlow's *Run Mode* or *Preview Mode*. To
58-
test this Action, you have to run it on an iOS or Android device or emulator. You can either
59-
**Download the Code** (by going to `Developer Menu > Download Code`) and build it for your
60-
device, or use the **Build APK** button (present on the [**Tool Bar**](../../intro/ff-ui/toolbar.md) to generate an APK that
61-
you can run on your Android device.
15+
It's important to note that the Share Action is designed for mobile platforms and is not supported in FlutterFlow's Run Mode or Preview Mode. To test this functionality, you need to [**run your app on an iOS or Android device or emulator**](../../testing-deployment-publishing/running-your-app/local-run.md).
6216
:::
17+
18+
![share-action](imgs/share-action.avif)

docs/ff-integrations/firebase/connect-to-firebase-setup.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,9 +168,9 @@ com/embed/1abddd1120db477da2c085dbc6b7a742?sid=5b161c8b-3957-4ac9-b27f-dc5ebc03f
168168

169169

170170

171-
## Enable Billing for Cloud Functions Access
171+
## Enable Billing
172172

173-
If you want to deploy functions (e.g., Braintree payments, Push Notifications), you will need to enable billing for your Firebase project. Please follow these steps to enable billing:
173+
If you want to deploy [Cloud Functions](https://firebase.google.com/products/functions) (e.g., Braintree payments, Push Notifications) or use [Firebase Cloud Storage](https://firebase.google.com/products/storage), you will need to enable billing for your Firebase project. Please follow these steps to enable billing:
174174

175175
1. From the Firebase dashboard of your project, navigate to the far left menu. Under Build, select **Functions** and then select **Upgrade project**.
176176

docs/marketplace/creators-hub/submission-criteria.md

Lines changed: 25 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -203,10 +203,30 @@ A seamless and positive test experience is crucial for users to evaluate your Fl
203203

204204
#### 4.1 Functional Run Mode Link
205205

206-
- **Criteria:** The provided Run Mode link must be active and correctly load a working demo of your project.
207-
- **Why it Matters:** The Run Mode link is the primary way users can interact with your project before purchasing. A broken or inaccessible link creates a significant barrier.
208-
- **What To Do:**
209-
- **Double-check your link:** Before submitting, test the link multiple times to confirm it showcases the experience you want potential buyers to have.
206+
- **Criteria:** The provided Run Mode link must be active and correctly load a working demo of your project. For mobile-only features or utility libraries that cannot be demonstrated in Run Mode's web environment, you must provide alternative demonstration methods.
207+
- **Why it Matters:** The Run Mode link is the primary way users can interact with your project before purchasing. A broken, inaccessible, or non-demonstrative link creates a significant barrier to understanding the item's value.
208+
- **What To Do:**
209+
- **For Standard Web-Compatible Items:**
210+
- Double-check your link before submitting to confirm it showcases the experience you want potential buyers to have.
211+
- Test the link multiple times to ensure consistent functionality.
212+
- **For Mobile-Only Features:**
213+
- Create a dedicated demonstration page in your project that explains the mobile-only functionality.
214+
- Include screenshots, videos, or mockups showing how the feature works on mobile devices.
215+
- Clearly indicate which features are mobile-only and why they cannot be demonstrated in Run Mode.
216+
- Optionally, provide a published FlutterFlow web deploy link that can be used instead of the Run Mode URL.
217+
- **For Utility Libraries (e.g., Analytics, Background Services):**
218+
- Create a demonstration page that explains the library's functionality.
219+
- Show configuration options and expected outcomes.
220+
- Include visual aids like flowcharts or diagrams to explain the library's operation.
221+
- Provide example code or configuration snippets.
222+
- Consider adding debug/test outputs that demonstrate the library is working.
223+
- **Documentation:**
224+
- Regardless of the type of item, ensure your documentation clearly explains how to implement and test the functionality in a real mobile environment.
225+
- Include troubleshooting guides and common implementation scenarios.
226+
227+
:::tip
228+
For items that cannot be fully demonstrated in Run Mode, focus on creating a clear, informative demonstration page that helps users understand the value and implementation of your item. Visual aids, clear explanations, and comprehensive documentation are key to helping users make informed decisions.
229+
:::
210230

211231
#### 4.2 User Sign-In (Anonymous Auth)
212232

@@ -251,7 +271,7 @@ Building a solid app template goes beyond surface-level design. It's about creat
251271
#### 5.2 No Pixel Overflow
252272

253273
- **Criteria:** Ensure your UI elements are positioned and sized correctly to avoid content overflowing its container, leading to visual glitches / cut off content.
254-
- **Why It Matters:** Pixel overflows are a sign of UI inconsistencies that can negatively impact the user experience, especially on different screen sizes. Pixel overflow issues can occur in Test Mode when theres a hardcoded pixel value and not enough space on the screen to render that exact value.
274+
- **Why It Matters:** Pixel overflows are a sign of UI inconsistencies that can negatively impact the user experience, especially on different screen sizes. Pixel overflow issues can occur in Test Mode when there's a hardcoded pixel value and not enough space on the screen to render that exact value.
255275
- **What To Do:**
256276
- **Preview pixel overflows:** Toggle the pixel overflow icon in the top-right of the canvas to see if there are any overflow issues.
257277
- **Leverage FlutterFlow's layout tools:** Use Expanded and Flex values to help prevent layout issues. Make `Columns` or `Rows` scrollable to prevent overflows. Use auto-sizing text or text clipping where it makes sense. Remove hard-coded width and height where it makes sense.

docs/resources/data-representation/global-properties.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ A list of all the available global properties is as follows:
3333

3434
- **Current Device Location:** Obtains he user's current location, ideal for updating their position on Google Maps or storing it in a backend database. [Check out examples](#current-device-location) on how to retrieve and save the current device location.
3535

36-
- **Link To Current Page:** Provides the deep link of the current page. Learn more about [adding deep links here](../../ff-concepts/navigation-routing/deep-dynamic-linking.md#adding-deep-link).
36+
- **Current Route Path**: Provides the route name of the currently active or visible page in your app. This property is especially helpful in scenarios where you want to adjust or block specific actions if the active page isn't the one you expect. For example, if you launch the app through a push notification, the home page might still run in the background, even if the notification directs you to a different page. Using this property, you can prevent unnecessary action triggers, such as On Page Load from the home page. See details on avoiding [this issue](https://github.com/FlutterFlow/flutterflow-issues/issues/2765#issuecomment-2598915946).
3737
- **Fraction of Screen Width:** Determines the proportional width of the device's screen.
3838
- **Fraction of Screen Height:** Determines the proportional height of the device's screen.
3939
- **Screen Width:** Provides the total width of the current device's screen in pixels.
@@ -45,7 +45,7 @@ A list of all the available global properties is as follows:
4545
- **Is Dark Mode:** Checks if the app's current theme mode is set to dark.
4646
- **Is Light Mode:** Checks if the app's current theme mode is set to light.
4747
- **Is On-Screen Keyboard Visible:** Checks if the on-screen or soft keyboard is visible. This is helpful in making UI adjustments if keyboard is visible on screen. See a [quick example](#is-on-screen-keyboard-visible).
48-
48+
- **Current Environment**: Gives you the current [development environment](../../testing-deployment-publishing/development-environments/development-environments.md) value.
4949

5050
:::tip[Generated Code]
5151
Learn more about the [**Generated Code**](../../ff-concepts/state-management/generated-code.md#global-state) behind Global Properties.

docs/resources/projects/libraries.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,17 @@ To publish a FlutterFlow project as a library, start by creating a FlutterFlow p
8080
- It's recommended to include a message that tells users what has changed in the version your are publishing.
8181
:::
8282

83+
:::warning
84+
To publish a project as a library, it must meet the following requirements:
85+
86+
- **No Prior Store Deployment**: The project must not have been deployed to the Google Play Store or Apple App Store.
87+
- **No Failed Deployments**: The Publish button remains disabled if a deployment process was started and failed.
88+
- **No Errors or Warnings**: All project errors or warnings must be addressed beforehand.
89+
- **Main Branch Only**: You can only publish from the main branch.
90+
- **Pro Plan Subscription**: A Pro Plan is required to publish a project as a Library.
91+
- **Not Cloned from Marketplace**: The project cannot be a clone of a Marketplace item.
92+
:::
93+
8394
### Disabled Features in a Library
8495

8596
When a project is converted into a library, the following features are disabled to ensure compatibility and functionality limitations:
@@ -136,7 +147,7 @@ To import a library project into another FlutterFlow project, you must go to the
136147
- By default, the latest published version of the library is imported, but you can choose to depend on an earlier version if needed.
137148
- You can also import the `current` version of the library to use the latest state of the library on the main branch - however, this is not recommended.
138149
- You must have a paid plan to import a library.
139-
150+
- When importing a library into a project or another library, the library’s version must not be set to 'current' and should be less than or equal to the FlutterFlow version of the project or library it’s being imported into. Learn more about [**managing Library’s FlutterFlow version**](../projects/settings/version-management.md#version-management-with-libraries).
140151
:::
141152

142153

@@ -232,6 +243,8 @@ You can easily upgrade to newer versions of the libraries as they become availab
232243

233244
![update-library](imgs/update-library.avif)
234245

246+
247+
235248
## Library Values
236249

237250
**Library values** are essentially variables created and used by a library author and intended to have their values set by the library user. These values allow library author to create configurable variables that are useful in different contexts, such as API keys, global settings, or other project-specific configurations. These values allow library users to input specific data required for the library to function properly in their project.
Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)