Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -78,4 +78,4 @@ await studioPro.ui.extensionsMenu.add({

## Action Arguments

Action arguments are also possible in the new Menu API. Review the [Menus documentation](/apidocs-mxsdk/apidocs/web-extensibility-api-11/menu/) for a detailed explanation.
Action arguments are also possible in the new Menu API. Review the [Menus documentation](/apidocs-mxsdk/apidocs/web-extensibility-api-11/menu/) for a detailed explanation.
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ If you are using Studio Pro 11.0–11.5 and your extension includes menus, your
* This how-to uses the results of [Get Started with the Web Extensibility API](/apidocs-mxsdk/apidocs/web-extensibility-api-11/getting-started/). Make sure to complete that how-to before starting this one.
* Review [how menus work](/apidocs-mxsdk/apidocs/web-extensibility-api-11/menu/) in the Web Extensibility API.


## Creating a Simple Menu

The code below adds a simple menu to your extension. The code will:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,4 +85,4 @@ export const component: IComponent = {
await appExplorerApi.addContextMenu(documentContextMenuNoPayload, "Microflows$Microflow");
}
};
```
```
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ export const component: IComponent = {
};
```

2. Rename `src/ui/index.tsx` to `src/ui/tab.tsx` and paste the following code into it:
1. Rename `src/ui/index.tsx` to `src/ui/tab.tsx` and paste the following code into it:

```typescript {hl_lines=["13-15"]}
import React, { StrictMode, useCallback, useEffect, useState } from "react";
Expand Down Expand Up @@ -225,7 +225,7 @@ export const component: IComponent = {
}
```

3. Create a new file `src/ui/pane.tsx` and paste the following code into it:
2. Create a new file `src/ui/pane.tsx` and paste the following code into it:

```typescript {hl_lines=["14-19"]}
import React, { StrictMode, useCallback, useEffect, useState } from "react";
Expand Down Expand Up @@ -267,7 +267,7 @@ export const component: IComponent = {
}
```

4. Update `build-extension.mjs` by replacing the `entryPoints` array with:
3. Update `build-extension.mjs` by replacing the `entryPoints` array with:

```javascript
const entryPoints = [
Expand All @@ -288,7 +288,7 @@ export const component: IComponent = {
})
```

5. Replace the contents of `manifest.json` with:
4. Replace the contents of `manifest.json` with:

```
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,6 @@ To integrate the Istio Service Mesh with an Ingress Controller, perform the foll
6. In Istio, configure a [Gateway](https://istio.io/latest/docs/reference/config/networking/gateway/) resource to allow traffic through the ingress gateway.
7. Define a [VirtualService](https://istio.io/latest/docs/reference/config/networking/virtual-service/) to route traffic from the gateway to a service in the mesh.


To configure the Istio Service Mesh for Mendix on Kubernetes, set up the following settings:

* **Ingress Type** - Select **kubernetes-ingress**; this option configures the Ingress according to the additional domain name you supply.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -287,6 +287,7 @@ Traefik uses 2 types of providers: CRDs or Kubernetes Ingress. Ensure that you i
#### Configuring Traefik in the Mxpc-cli Tool

To configure Traefik for Mendix on Kubernetes, set up the following settings:

* **Ingress Type** - Select **kubernetes-ingress**; this option configures the Ingress according to the additional domain name you supply.
* **Ingress Domain Name** - Provide the domain name which was registered for Traefik
* **Ingress Path** - Set to `/*`.
Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/marketplace/deprecate-content/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,4 @@ A badge is now displayed across the component's Marketplace page, letting users

If you are a company admin or a component developer, you can deprecate both personal components, and company components.
However, if the component is part of a content group, you need to be a member of that group to be able to deprecate components.
For details, refer to the [Content Group](/appstore/home-page/#content-groups) section in *Marketplace Home Page*.
For details, refer to the [Content Group](/appstore/home-page/#content-groups) section in *Marketplace Home Page*.
2 changes: 0 additions & 2 deletions content/en/docs/marketplace/overview/marketplace-home-page.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,6 @@ Click the contextual **Actions** menu to access options for managing your conten
* **Deprecate Component** – Deprecate the component, and select alternatives.
For details on deprecating components, refer to [Deprecating Marketplace Content](/appstore/deprecate-content/).


A **Private** label on a component means the component is your company's private Marketplace content. For details on how this is configured, refer to the [Adding New Marketplace Content](/appstore/submit-content/#adding) section of *Uploading to the Marketplace*. This content can be shared with [guests](#guests).

A component assigned as [group content](#group-content) will have a label for the [content group](#content-groups) to which it is assigned.
Expand Down Expand Up @@ -200,4 +199,3 @@ Download the latest version of [Studio Pro](/releasenotes/studio-pro/).
Share new Marketplace content that you have developed.

For details, refer to [Uploading Content to the Marketplace](/appstore/submit-content/).

Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,6 @@ If your app is configured to [restrict access for incoming requests](/developerp

{{% alert color="info" %}}Each of your app environments needs to be registered separately. A successful app registration is limited to the app URL that was provided during the registration. Note that a change in the app URL, or restoring a database backup from one environment to another, will require you to register the affected app environments again.{{% /alert %}}


### Running on self-hosted for airgapped and on-premises {#run-private-service-and-on-premises}

{{% alert color="info" %}} When self-hosting the Document Generation Service in an airgapped environment, the browser does not have access to the internet. As such, note that any external dependencies such as fonts, stylesheets, or images are not loaded. This could cause the document generation process to fail or result in incomplete documents. {{% /alert %}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -165,4 +165,4 @@ However, you can make the following adjustments outside Teamcenter Extension:
* Moving microflows
* Renaming microflows

If you select an item in the **Action** list, Teamcenter Extension performs a validation check to see if the Teamcenter objects, entities, and microflows still exist and are valid. The results are reported in the **Validation** section.
If you select an item in the **Action** list, Teamcenter Extension performs a validation check to see if the Teamcenter objects, entities, and microflows still exist and are valid. The results are reported in the **Validation** section.
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,4 @@ Follow these step-by-step guides for various integrations supported by the Teamc
* [Search Workspace Objects](/appstore/modules/siemens-plm/teamcenter-extension/integrations/search-workspace-objects/)
* [Relate Workspace Objects](/appstore/modules/siemens-plm/teamcenter-extension/integrations/relate-workspace-objects/)
* [Get Properties](/appstore/modules/siemens-plm/teamcenter-extension/integrations/get-properties/)
* [Get Structure](/appstore/modules/siemens-plm/teamcenter-extension/integrations/get-structure/)
* [Get Structure](/appstore/modules/siemens-plm/teamcenter-extension/integrations/get-structure/)
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ This document takes you through a use case of creating logic using the Teamcente
For details on BOM Window properties, refer to the Teamcenter Documentation.
{{< figure src="/attachments/appstore/platform-supported-content/modules/siemens/teamcenter-extension/get-structure/import-mapping-2.png">}}

4. Click **Close** to close the stucture configuration panel.
1. Click **Close** to close the stucture configuration panel.

5. On the import mapping page, click the `BOMLine` entity. This opens the **Object mapping** window.
{{< figure src="/attachments/appstore/platform-supported-content/modules/siemens/teamcenter-extension/get-structure/import-mapping-empty.png">}}
Expand Down Expand Up @@ -86,7 +86,6 @@ This document takes you through a use case of creating logic using the Teamcente
* `Last Saved Date`
* `Maturity`


14. Click **Close** to close the panel.
{{< figure src="/attachments/appstore/platform-supported-content/modules/siemens/teamcenter-extension/get-structure/object-mapping-result.png">}}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ The `Item Revision` contains the `CAD Parts` on which the simulation is to be pe

1. Make sure you have set up your credentials on the **Settings** tab before following these instructions. For more instructions on how to configure your settings, follow the steps in the [Settings Tab](/appstore/modules/siemens-plm/teamcenter-extension/create-an-integration/#settings-tab) section of *Teamcenter Extension*.

2. Click the **Search Item Revision** button on the home page to start configuring your integration.
2. Click the **Search Item Revision** button on the home page to start configuring your integration.
{{< figure src="/attachments/appstore/platform-supported-content/modules/siemens/teamcenter-extension/relate-workspace-objects/icon.png">}}
The [Import Mapping page](/refguide/import-mappings/) is displayed. This determines what data is retrieved from Teamcenter, and what type of objects are created in Mendix.
{{< figure src="/attachments/appstore/platform-supported-content/modules/siemens/teamcenter-extension/relate-workspace-objects/import-mapping.png">}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,4 +77,4 @@ The microflow returns a list of Part Revisions that matches the `SearchCriteria`
### Item Revision Search Criteria {#item-revision-search-criteria}

* It is highly recommended to provide the `_Type` field, as it significantly optimizes the `ItemRevision_SavedQueryItemRevision` microflow. The `_type` field specifies which types of `ItemRevisions` will be requested. The field should be set to `PartRevision` to retrieve only `PartRevisions` and specializations of it.
* The `Name` and `ItemID` fields of the `ItemRevisionSearchCriteria` parameter support wildcards. For example, if `Name` is set to `a*`, all revisions whose name starts with an `a` are returned.
* The `Name` and `ItemID` fields of the `ItemRevisionSearchCriteria` parameter support wildcards. For example, if `Name` is set to `a*`, all revisions whose name starts with an `a` are returned.
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ If you want to use specific resources, you should instead expose a new endpoint
9. Click **Back** to return to the **Details** page.
10. Click the **Ingestion Configuration** tab to set up your ingestion destination table.
11. Click **Create** to start setting up the Ingestion Configuration.
* **Target Database** – Name of the database for data ingestion
***Target Database** – Name of the database for data ingestion
* **Target Schema** – Target schema where all data will be ingested
12. Click **Save**.
13. Click the **Data Ingestion** tab, where you can start your data ingestion or set up a schedule.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ This is what you can do on the [Profile](https://user-settings.mendix.com/link/p
* Choose to make your profile public by clicking **Make Profile Public**. This allows the Mendix community to view your profile.
To make your public profile private again, click **Make Profile Private**.


* Add a **Recovery Email** address, which is useful if you lose access to your account or Mendix profile. You can provide a non-business email address for this.

### Merging Profiles {#merging-profiles}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -138,4 +138,4 @@ Roles for inherited members are determined by the **Group Management** page and

Direct members receive roles explicitly assigned by the app owner. Inherited members retain the roles defined in their group context.

This approach ensures consistency. Direct roles can be managed with app-specific assignments, while inherited roles can have governance-driven assignments from group hierarchy.
This approach ensures consistency. Direct roles can be managed with app-specific assignments, while inherited roles can have governance-driven assignments from group hierarchy.
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ if trim($User/Name) = '' then '' else $User/Name + "@mendix.com"

In Studio Pro 11.6.0, **React.js** was updated to version 19.0.0. This change affects both web and mobile applications. All platform supported widgets have been made compatible with React 19.0.0. Please upgrade all installed widgets to the latest published versions.

React 19 features a few breaking changes to its APIs. Notably, the previously deprecated `findDOMNode` API is now removed. Please refer to React's [Removed deprecated React DOM APIs ](https://react.dev/blog/2024/04/25/react-19-upgrade-guide#removed-deprecated-react-dom-apis) documentation to ensure the widgets you are developing are compatible with **Studio Pro 11.6.0** and **React 19.0.0**.
React 19 features a few breaking changes to its APIs. Notably, the previously deprecated `findDOMNode` API is now removed. Please refer to React's [Removed deprecated React DOM APIs](https://react.dev/blog/2024/04/25/react-19-upgrade-guide#removed-deprecated-react-dom-apis) documentation to ensure the widgets you are developing are compatible with **Studio Pro 11.6.0** and **React 19.0.0**.

Keep in mind that incompatibility with React 19.0.0 will neither prevent your pluggable widget from compiling, nor your React client application from bundling. To check your widget's compatibility, check the source code and test the widget in the browser or in the mobile app.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -264,4 +264,3 @@ Find more info on this in [the W3C Easy Checks – A First Review of Web Accessi

* [Mendix Academy's Accessibility Learning Path](https://academy.mendix.com/link/paths/141/Improve-Your-App-Accessibility).
* [Mendix Accessibility Conformance: Ensure Your Apps Are Accessible](https://www.mendix.com/evaluation-guide/app-lifecycle/develop/ux-multi-channel-apps/accessibility/)

Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ For example, you have a collection of CDs like the one in the table below:
The rows in the table are CDs. The type of the two rows is *CD* and this is the entity name. A specific CD like *How to Dismantle an Atomic Bomb* from the band *U2* is called an object of the entity *CD*. Characteristics like the title and artist are called attributes.

## Types of Entities {#entity-types}

The entity type defines how the data is handled and there are four types:

1. Persistable entity
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -225,5 +225,3 @@ WHERE ID IN (
INNER JOIN Module.Customer ON Module.Customer/CustomerID = Module.Order/CustomerID
WHERE Module.Customer/Name = 'Mary' )
```


1 change: 0 additions & 1 deletion content/en/docs/releasenotes/private-platform/2.2.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ Private Mendix Platform now offers support for [Maia-assisted app creation](/ref
This feature is available as a beta release, available to selected customers. For more information about beta releases, see [Release Status](/releasenotes/release-status/).
{{% /alert %}}


#### Updates

##### Studio Pro Updates
Expand Down
29 changes: 15 additions & 14 deletions content/en/docs/releasenotes/studio-pro/10/10.24.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,23 +18,23 @@ This is the [LTS](/releasenotes/studio-pro/lts-mts/#lts) version 10 release for

### Improvements

- We added support for the following database versions:
- PostgreSQL 18
- Microsoft SQL Server 2025
- We introduced the [batch conversion](/refguide/mendix-client/batch-conversion/) capability in Studio Pro for converting the old widgets that are no longer supported by the [React client](/refguide/mendix-client/react/).
- We now cleanup expired sessions in batches instead of all at once.
* We added support for the following database versions:
* PostgreSQL 18
* Microsoft SQL Server 2025
* We introduced the [batch conversion](/refguide/mendix-client/batch-conversion/) capability in Studio Pro for converting the old widgets that are no longer supported by the [React client](/refguide/mendix-client/react/).
* We now cleanup expired sessions in batches instead of all at once.

### Fixes

- We fixed an error in the Studio Pro installer when the installer is checking if the .NET version is already installed or not. (Ticket 253218)
- We fixed an issue where unsaved changes of the System Text editor would be committed when running the app locally. (Ticket 259664)
- We fixed an issue that prevented some users to authenticate in Studio Pro. (Ticket 259700)
- SQLite files are now included in the service worker’s pre-cache list to ensure they are available offline. (Ticket 264140, Ticket 264910)
- We fixed an error when typing invalid values in the zoom combo box on the page editor in **Structure** mode.
- We fixed an issue where scheduled events with **On overlap** configured as **Delay next** would cause multiple "Skipping the update of ScheduledEvent because it's running; retrying in 7 seconds." log messages if the application was started with some time between the shutdown and the restart.
- We fixed the issue that invalid sessions without an associated user were never removed from the database.
- Only log 404 errors in development mode to reduce log noise in production environments. Server access logs should be used for 404 tracking in production.
- We fixed a bug where the File Uploader would not be clickable when nested in a container.
* We fixed an error in the Studio Pro installer when the installer is checking if the .NET version is already installed or not. (Ticket 253218)
* We fixed an issue where unsaved changes of the System Text editor would be committed when running the app locally. (Ticket 259664)
* We fixed an issue that prevented some users to authenticate in Studio Pro. (Ticket 259700)
* SQLite files are now included in the service worker’s pre-cache list to ensure they are available offline. (Ticket 264140, Ticket 264910)
* We fixed an error when typing invalid values in the zoom combo box on the page editor in **Structure** mode.
* We fixed an issue where scheduled events with **On overlap** configured as **Delay next** would cause multiple "Skipping the update of ScheduledEvent because it's running; retrying in 7 seconds." log messages if the application was started with some time between the shutdown and the restart.
* We fixed the issue that invalid sessions without an associated user were never removed from the database.
* Only log 404 errors in development mode to reduce log noise in production environments. Server access logs should be used for 404 tracking in production.
* We fixed a bug where the File Uploader would not be clickable when nested in a container.

## 10.24.12 {#102412}

Expand All @@ -43,6 +43,7 @@ This is the [LTS](/releasenotes/studio-pro/lts-mts/#lts) version 10 release for
{{% button color="info" href="https://marketplace.mendix.com/link/studiopro/10.24.12" text="Go to Marketplace" title="Download version 10.24.12 from the Marketplace" %}}

### Improvements

* We implemented a feature that allows filtering out spans by their name. For more information, see the [Testing](/refguide/tracing-in-runtime/#testing) section of *Tracing*.
* The logout API in the new client `mx-api` now supports an optional params object with `reloadOnSuccess` flag. By default, `mx-api/logout` automatically reloads the page after a successful logout if you call it with no params object. If you pass a params object `{reloadOnSuccess: false}`, the automatic reload is disabled so you can implement your own custom logout flow and trigger reload yourself when needed.
* We now log a warning when runtime operation parameters are missing during a database retrieval with an XPath constraint.
Expand Down
Loading