diff --git a/webapp/components/expression/functionExamples.js b/webapp/components/expression/functionExamples.js
index 907fbe23a1..c679338509 100644
--- a/webapp/components/expression/functionExamples.js
+++ b/webapp/components/expression/functionExamples.js
@@ -35,12 +35,7 @@ const functionExamples = {
},
}
-const experimentalFunctions = [
- functionNames.geoPolygon,
- functionNames.userEmail,
- functionNames.userName,
- functionNames.userProp,
-]
+const experimentalFunctions = []
const isFunctionAvailable = (functionName) =>
ProcessUtils.ENV.experimentalFeatures || !experimentalFunctions.includes(functionName)
diff --git a/webapp/components/expression/nodes/binaryOperand.js b/webapp/components/expression/nodes/binaryOperand.js
index a2bdf53e0c..e42dff76da 100644
--- a/webapp/components/expression/nodes/binaryOperand.js
+++ b/webapp/components/expression/nodes/binaryOperand.js
@@ -4,17 +4,12 @@ import PropTypes from 'prop-types'
import * as A from '@core/arena'
import * as Expression from '@core/expressionParser/expression'
import * as NodeDef from '@core/survey/nodeDef'
-import * as ProcessUtils from '@core/processUtils'
import { Button } from '@webapp/components/buttons'
const { types } = Expression
-const availableOperandExpressionTypes = [
- types.Identifier,
- types.Literal,
- ...(ProcessUtils.ENV.experimentalFeatures ? [types.CallExpression] : []),
-]
+const availableOperandExpressionTypes = [types.Identifier, types.Literal, types.CallExpression]
const expressionTypeAcronymByType = {
[types.CallExpression]: 'call',
diff --git a/webapp/components/survey/NodeDefDetails/FileProps.js b/webapp/components/survey/NodeDefDetails/FileProps.js
index d9fe712f48..730e300bb8 100644
--- a/webapp/components/survey/NodeDefDetails/FileProps.js
+++ b/webapp/components/survey/NodeDefDetails/FileProps.js
@@ -4,7 +4,6 @@ import PropTypes from 'prop-types'
import * as A from '@core/arena'
import * as NodeDef from '@core/survey/nodeDef'
import * as Validation from '@core/validation/validation'
-import * as ProcessUtils from '@core/processUtils'
import { useI18n } from '@webapp/store/system'
@@ -58,22 +57,20 @@ const FileProps = (props) => {
validation={Validation.getFieldValidation(NodeDef.propKeys.maxFileSize)(validation)}
/>
- {ProcessUtils.ENV.experimentalFeatures && (
-
- {
- Actions.setProp({ state, key: NodeDef.keysPropsAdvanced.fileNameExpression, value })
- }}
- qualifier="fileNameExpression"
- query={NodeDef.getFileNameExpression(nodeDef)}
- validation={Validation.getFieldValidation(NodeDef.keysPropsAdvanced.fileNameExpression)(validation)}
- />
-
- )}
+
+ {
+ Actions.setProp({ state, key: NodeDef.keysPropsAdvanced.fileNameExpression, value })
+ }}
+ qualifier="fileNameExpression"
+ query={NodeDef.getFileNameExpression(nodeDef)}
+ validation={Validation.getFieldValidation(NodeDef.keysPropsAdvanced.fileNameExpression)(validation)}
+ />
+
diff --git a/webapp/components/survey/SurveyForm/SurveyForm.js b/webapp/components/survey/SurveyForm/SurveyForm.js
index adfdac1d6e..0e5857b722 100644
--- a/webapp/components/survey/SurveyForm/SurveyForm.js
+++ b/webapp/components/survey/SurveyForm/SurveyForm.js
@@ -10,7 +10,6 @@ import * as Survey from '@core/survey/survey'
import * as NodeDef from '@core/survey/nodeDef'
import * as NodeDefLayout from '@core/survey/nodeDefLayout'
import * as Record from '@core/record/record'
-import * as ProcessUtils from '@core/processUtils'
import { appModuleUri, designerModules } from '@webapp/app/appModules'
import { SurveyState, useSurvey } from '@webapp/store/survey'
@@ -200,13 +199,11 @@ const SurveyForm = (props) => {
onSelect={onNodeDefTreeSelect}
/>
- {edit && ProcessUtils.ENV.experimentalFeatures && (
- dispatch(SurveyFormActions.setTreeSelectViewMode(mode))}
- selectedItemKey={treeSelectViewMode}
- />
- )}
+ dispatch(SurveyFormActions.setTreeSelectViewMode(mode))}
+ selectedItemKey={treeSelectViewMode}
+ />
{edit && canEditDef && viewOnlyPages && }
diff --git a/webapp/components/survey/SurveyForm/components/addNodeDefPanel.js b/webapp/components/survey/SurveyForm/components/addNodeDefPanel.js
index d2ca2dcd1d..5db519dc71 100644
--- a/webapp/components/survey/SurveyForm/components/addNodeDefPanel.js
+++ b/webapp/components/survey/SurveyForm/components/addNodeDefPanel.js
@@ -15,7 +15,7 @@ import { TestId } from '@webapp/utils/testId'
import * as NodeDefUIProps from '../nodeDefs/nodeDefUIProps'
-const experimentalNodeDefTypes = [NodeDef.nodeDefType.geo]
+const experimentalNodeDefTypes = []
const AddNodeDefButtons = (props) => {
const { surveyCycleKey, nodeDef, addNodeDef } = props
diff --git a/webapp/views/App/views/Home/SurveyInfo/SurveyInfo.js b/webapp/views/App/views/Home/SurveyInfo/SurveyInfo.js
index 619e298d66..0745d132af 100644
--- a/webapp/views/App/views/Home/SurveyInfo/SurveyInfo.js
+++ b/webapp/views/App/views/Home/SurveyInfo/SurveyInfo.js
@@ -2,8 +2,6 @@ import './SurveyInfo.scss'
import React from 'react'
-import * as ProcessUtils from '@core/processUtils'
-
import { useAuthCanEditSurvey, useAuthCanUseAnalysis, useUserIsSystemAdmin } from '@webapp/store/user'
import { TestId } from '@webapp/utils/testId'
@@ -76,17 +74,15 @@ const SurveyInfo = () => {
})
}
if (!readOnly) {
- if (ProcessUtils.ENV.experimentalFeatures) {
- tabs.push({
- key: 'extraProps',
- component: SurveyUserExtraPropDefsEditor,
- label: 'homeView.surveyInfo.userExtraProps.title',
- props: {
- extraPropDefs: userExtraPropDefs,
- onExtraPropDefsUpdate: setUserExtraPropDefs,
- },
- })
- }
+ tabs.push({
+ key: 'extraProps',
+ component: SurveyUserExtraPropDefsEditor,
+ label: 'homeView.surveyInfo.userExtraProps.title',
+ props: {
+ extraPropDefs: userExtraPropDefs,
+ onExtraPropDefsUpdate: setUserExtraPropDefs,
+ },
+ })
if (isSystemAdmin) {
tabs.push({
key: 'configuration',
diff --git a/webapp/views/App/views/Users/UserEdit/UserEdit.js b/webapp/views/App/views/Users/UserEdit/UserEdit.js
index 381554dfca..9fded4a8ee 100644
--- a/webapp/views/App/views/Users/UserEdit/UserEdit.js
+++ b/webapp/views/App/views/Users/UserEdit/UserEdit.js
@@ -6,7 +6,6 @@ import { useNavigate, useParams } from 'react-router'
import { Objects } from '@openforis/arena-core'
import * as AuthGroup from '@core/auth/authGroup'
-import * as ProcessUtils from '@core/processUtils'
import * as Survey from '@core/survey/survey'
import * as User from '@core/user/user'
import * as Validation from '@core/validation/validation'
@@ -122,7 +121,7 @@ const UserEdit = () => {
)}
- {ProcessUtils.ENV.experimentalFeatures && }
+
{canEditSystemAdmin && (
@@ -168,15 +167,13 @@ const UserEdit = () => {
/>
)}
- {ProcessUtils.ENV.experimentalFeatures && (
-
-
-
- )}
+
+
+
>
)}
{editingSameUser && hideSurveyGroup && canUseMap && (
diff --git a/webapp/views/App/views/Users/UsersListSurvey/Row/Row.js b/webapp/views/App/views/Users/UsersListSurvey/Row/Row.js
index 63a80652dc..e3220c7ff8 100644
--- a/webapp/views/App/views/Users/UsersListSurvey/Row/Row.js
+++ b/webapp/views/App/views/Users/UsersListSurvey/Row/Row.js
@@ -5,7 +5,6 @@ import * as AuthGroup from '@core/auth/authGroup'
import * as Survey from '@core/survey/survey'
import * as User from '@core/user/user'
import * as DateUtils from '@core/dateUtils'
-import * as ProcessUtils from '@core/processUtils'
import { TestId } from '@webapp/utils/testId'
import { useI18n } from '@webapp/store/system'
@@ -87,15 +86,13 @@ const Row = (props) => {
- {canEditUser && ProcessUtils.ENV.experimentalFeatures && (
-