diff --git a/CHANGELOG.md b/CHANGELOG.md
index e1e2b5e83a..7e6fc6a44c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,17 @@
+## [100.41.3](https://github.com/dhis2/capture-app/compare/v100.41.2...v100.41.3) (2023-10-16)
+
+
+### Bug Fixes
+
+* [DHIS2-15782] navigation with program stage filter ([#3431](https://github.com/dhis2/capture-app/issues/3431)) ([8f7a017](https://github.com/dhis2/capture-app/commit/8f7a017c5860104620c6b7fc8c20916b00037302))
+
+## [100.41.2](https://github.com/dhis2/capture-app/compare/v100.41.1...v100.41.2) (2023-10-12)
+
+
+### Bug Fixes
+
+* [DHIS2-15827] remove effects of 'Prevent adding new events to stage' action from the form ([#3418](https://github.com/dhis2/capture-app/issues/3418)) ([f17d087](https://github.com/dhis2/capture-app/commit/f17d087f368cf4d6b26923fd5cf4fb15d7795ba2))
+
## [100.41.1](https://github.com/dhis2/capture-app/compare/v100.41.0...v100.41.1) (2023-10-09)
diff --git a/cypress/integration/EnrollmentPage/HiddenProgramStage.feature b/cypress/integration/EnrollmentPage/HiddenProgramStage.feature
index 4e6e427e3e..e13095474a 100644
--- a/cypress/integration/EnrollmentPage/HiddenProgramStage.feature
+++ b/cypress/integration/EnrollmentPage/HiddenProgramStage.feature
@@ -3,5 +3,4 @@ Feature: Hidden program stage
Scenario: The user cannot add an event in a hidden program stage
Given you add an enrollment event that will result in a rule effect to hide a program stage
Then the New Postpartum care visit event button is disabled in the stages and events widget
- And and an error is show in the Postpartum care visit stage
And the Postpartum care visit button is disabled in the enrollmentEventNew page
diff --git a/cypress/integration/EnrollmentPage/HiddenProgramStage/index.js b/cypress/integration/EnrollmentPage/HiddenProgramStage/index.js
index edf6b833bd..f9e5cf69c2 100644
--- a/cypress/integration/EnrollmentPage/HiddenProgramStage/index.js
+++ b/cypress/integration/EnrollmentPage/HiddenProgramStage/index.js
@@ -45,18 +45,6 @@ Then('the New Postpartum care visit event button is disabled in the stages and e
.should('be.disabled');
});
-Then('and an error is show in the Postpartum care visit stage', () => {
- cy.visit(
- '/#/enrollmentEventNew?enrollmentId=fmhIsWXVDmS&orgUnitId=s7SLtx8wmRA&programId=WSGAb5XwJ3Y&teiId=uW8Y7AIcRKA&stageId=bbKtnxRZKEP',
- );
- cy.contains('[data-test="dhis2-uicore-button"]', 'Complete')
- .should('be.disabled');
- cy.contains('[data-test="dhis2-uicore-button"]', 'Save without completing')
- .should('be.disabled');
- cy.contains('[data-test="dhis2-uicore-noticebox-content"]', 'You can\'t add any more Postpartum care visit events')
- .should('exist');
-});
-
Then('the Postpartum care visit button is disabled in the enrollmentEventNew page', () => {
cy.visit(
'/#/enrollmentEventNew?enrollmentId=fmhIsWXVDmS&orgUnitId=s7SLtx8wmRA&programId=WSGAb5XwJ3Y&teiId=uW8Y7AIcRKA',
diff --git a/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser.feature b/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser.feature
index d3f07adfe2..b0bdfef1e0 100644
--- a/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser.feature
+++ b/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser.feature
@@ -186,6 +186,13 @@ And you select the events scheduled today
And you apply the current filter
Then you see the selected option in the scheduledAt filter
+@v>=39
+Scenario: The program stage working list configureation is kept when navigating
+Given you open the main page with Ngelehun and WHO RMNCH Tracker context and configure a program stage working list
+When you open an enrollment event from the working list
+And you go back using the browser button
+Then the program stage working list is loaded
+
@v>=40
Scenario: The user creates, updates and deletes a Program stage custom working list
Given you open the main page with Ngelehun and Malaria case diagnosis and Household investigation context
diff --git a/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser/index.js b/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser/index.js
index 7e5825c8a1..760319bfba 100644
--- a/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser/index.js
+++ b/cypress/integration/WorkingLists/TeiWorkingLists/TeiWorkingListsUser/index.js
@@ -760,3 +760,42 @@ Then('the program stage custom working list filters are loaded', () => {
.should('have.length', 2);
});
+Given('you open the main page with Ngelehun and WHO RMNCH Tracker context and configure a program stage working list', () => {
+ cy.visit('#/?programId=WSGAb5XwJ3Y&orgUnitId=DiszpKrYNg8');
+ cy.get('[data-test="template-selector-create-list"]')
+ .click();
+
+ cy.get('[data-test="tei-working-lists"]')
+ .within(() => {
+ cy.contains('More filters')
+ .click();
+ cy.contains('Program stage')
+ .click();
+ });
+
+ cy.get('[data-test="list-view-filter-contents"]')
+ .contains('Postpartum care visit')
+ .click();
+
+ cy.get('[data-test="list-view-filter-apply-button"]')
+ .click();
+});
+
+When('you open an enrollment event from the working list', () => {
+ cy.contains('Linda')
+ .click();
+});
+
+When('you go back using the browser button', () => {
+ cy.go('back');
+});
+
+Then('the program stage working list is loaded', () => {
+ cy.get('[data-test="tei-working-lists"]')
+ .find('[data-test="more-filters"]')
+ .should('have.length', 2);
+
+ cy.get('[data-test="tei-working-lists"]')
+ .contains('WHOMCH Hemoglobin value')
+ .should('exist');
+});
diff --git a/package.json b/package.json
index 348ef10bf7..08fc321e76 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "capture-app",
"homepage": ".",
- "version": "100.41.1",
+ "version": "100.41.3",
"cacheVersion": "6",
"serverVersion": "38",
"license": "BSD-3-Clause",
@@ -10,7 +10,7 @@
"packages/rules-engine"
],
"dependencies": {
- "@dhis2/rules-engine-javascript": "100.41.1",
+ "@dhis2/rules-engine-javascript": "100.41.3",
"@dhis2/app-runtime": "^3.9.3",
"@dhis2/d2-i18n": "^1.1.0",
"@dhis2/d2-icons": "^1.0.1",
diff --git a/packages/rules-engine/package.json b/packages/rules-engine/package.json
index 5aa6daf77f..2280715107 100644
--- a/packages/rules-engine/package.json
+++ b/packages/rules-engine/package.json
@@ -1,6 +1,6 @@
{
"name": "@dhis2/rules-engine-javascript",
- "version": "100.41.1",
+ "version": "100.41.3",
"license": "BSD-3-Clause",
"main": "./build/cjs/index.js",
"scripts": {
diff --git a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/ErrorText.component.js b/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/ErrorText.component.js
deleted file mode 100644
index a885a48a6d..0000000000
--- a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/ErrorText.component.js
+++ /dev/null
@@ -1,20 +0,0 @@
-// @flow
-import React from 'react';
-import i18n from '@dhis2/d2-i18n';
-import { NoticeBox } from '@dhis2/ui';
-import type { Props } from './ErrorText.types';
-
-export const ErrorText = ({ stageName }: Props) => (
- <>
-
-
- >
-);
diff --git a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/ErrorText.types.js b/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/ErrorText.types.js
deleted file mode 100644
index 07785c7e1a..0000000000
--- a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/ErrorText.types.js
+++ /dev/null
@@ -1,5 +0,0 @@
-// @flow
-
-export type Props = {|
- stageName: string,
-|};
diff --git a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/index.js b/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/index.js
deleted file mode 100644
index 2b26086840..0000000000
--- a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/ErrorText/index.js
+++ /dev/null
@@ -1,2 +0,0 @@
-// @flow
-export { ErrorText } from './ErrorText.component';
diff --git a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/FinishButtons/FinishButtons.component.js b/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/FinishButtons/FinishButtons.component.js
index 1c0a36c1c8..465f807ace 100644
--- a/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/FinishButtons/FinishButtons.component.js
+++ b/src/core_modules/capture-core/components/WidgetEnrollmentEventNew/FinishButtons/FinishButtons.component.js
@@ -3,7 +3,6 @@ import React, { type ComponentType } from 'react';
import i18n from '@dhis2/d2-i18n';
import { withStyles } from '@material-ui/core';
import { Button, spacersNum } from '@dhis2/ui';
-import { ConditionalTooltip } from 'capture-core/components/ConditionalTooltip';
import { withCancelButton } from '../../DataEntry/withCancelButton';
import { addEventSaveTypes } from '../DataEntry/addEventSaveTypes';
import type { InputProps, Props } from './finishButtons.types';
@@ -18,40 +17,17 @@ const styles = {
},
};
-const FinishButtonsPlain = ({ onSave, cancelButton, hiddenProgramStage, stageName, classes }: Props) => (
+const FinishButtonsPlain = ({ onSave, cancelButton, classes }: Props) => (