- saving progress;
This commit is contained in:
49
package.json
49
package.json
@@ -4,52 +4,51 @@
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@babel/plugin-proposal-private-property-in-object": "7.21.11",
|
||||
"@babel/preset-react": "7.24.7",
|
||||
"@date-fns/tz": "1.1.2",
|
||||
"@emailjs/browser": "^4.4.1",
|
||||
"@emotion/styled": "11.13.0",
|
||||
"@number-flow/react": "0.2.0",
|
||||
"@babel/preset-react": "7.25.9",
|
||||
"@date-fns/tz": "1.2.0",
|
||||
"@emailjs/browser": "4.4.1",
|
||||
"@emotion/styled": "11.13.5",
|
||||
"@number-flow/react": "0.4.1",
|
||||
"@sentry/browser": "^8.41.0",
|
||||
"@tanstack/react-table": "^8.20.5",
|
||||
"@wordpress/i18n": "5.8.0",
|
||||
"@wordpress/react-i18n": "4.8.0",
|
||||
"@xyflow/react": "12.3.1",
|
||||
"@wordpress/i18n": "5.13.0",
|
||||
"@wordpress/react-i18n": "4.13.0",
|
||||
"codice-fiscale-js": "2.3.22",
|
||||
"copy-to-clipboard": "^3.3.3",
|
||||
"deep-object-diff": "^1.1.9",
|
||||
"dompurify": "3.1.7",
|
||||
"copy-to-clipboard": "3.3.3",
|
||||
"deep-object-diff": "1.1.9",
|
||||
"dompurify": "3.2.2",
|
||||
"fast-deep-equal": "3.1.3",
|
||||
"hotkeys-js": "^3.13.7",
|
||||
"html-react-parser": "5.1.16",
|
||||
"hotkeys-js": "3.13.7",
|
||||
"html-react-parser": "5.1.18",
|
||||
"jwt-decode": "4.0.0",
|
||||
"klona": "2.0.6",
|
||||
"leader-line": "^1.0.7",
|
||||
"leader-line": "1.0.7",
|
||||
"luxon": "3.5.0",
|
||||
"object-path-immutable": "4.1.2",
|
||||
"primeicons": "7.0.0",
|
||||
"primereact": "10.8.4",
|
||||
"quill": "2.0.2",
|
||||
"primereact": "10.8.5",
|
||||
"quill": "2.0.3",
|
||||
"ramda": "0.30.1",
|
||||
"react": "18.3.1",
|
||||
"react-dnd": "16.0.1",
|
||||
"react-dnd-html5-backend": "16.0.1",
|
||||
"react-dom": "18.3.1",
|
||||
"react-hook-form": "7.53.0",
|
||||
"react-router-dom": "6.26.2",
|
||||
"react-hook-form": "7.53.2",
|
||||
"react-router-dom": "7.0.1",
|
||||
"react-scripts": "5.0.1",
|
||||
"validate.js": "0.13.1",
|
||||
"zustand": "4.5.4",
|
||||
"zustand-x": "3.0.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/cli": "7.25.6",
|
||||
"@babel/core": "7.25.2",
|
||||
"@babel/plugin-syntax-jsx": "7.24.7",
|
||||
"@wordpress/babel-plugin-makepot": "6.8.0",
|
||||
"@babel/cli": "7.25.9",
|
||||
"@babel/core": "7.26.0",
|
||||
"@babel/plugin-syntax-jsx": "7.25.9",
|
||||
"@wordpress/babel-plugin-makepot": "6.13.0",
|
||||
"babel-plugin-macros": "3.1.0",
|
||||
"node-wp-i18n": "^1.2.7",
|
||||
"sass": "1.79.3",
|
||||
"sass-loader": "16.0.2"
|
||||
"node-wp-i18n": "1.2.7",
|
||||
"sass": "1.81.0",
|
||||
"sass-loader": "16.0.3"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "GENERATE_SOURCEMAP=false react-scripts start",
|
||||
|
||||
@@ -51,9 +51,36 @@
|
||||
.flowContainer__flowItem {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 20px;
|
||||
width: 100%;
|
||||
max-width: 280px;
|
||||
padding: 15px;
|
||||
border: 1px solid var(--panel-content-borderColor);
|
||||
}
|
||||
|
||||
.flowContainer__flowItemInner {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 10px;
|
||||
width: 100%;
|
||||
max-width: 250px;
|
||||
padding: 7px;
|
||||
border: 1px solid var(--table-border-color);
|
||||
border: 1px solid var(--panel-content-borderColor);
|
||||
|
||||
label {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
padding: 10px 0 5px;
|
||||
font-size: 14px;
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
&.initialForm, &.finalForm {
|
||||
border-color: var(--card-full-background-color-3);
|
||||
background-color: var(--card-full-background-color-3);
|
||||
|
||||
label {
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -21,6 +21,7 @@
|
||||
--message-warning-color: #cc8925;
|
||||
--message-info-background: rgba(183, 183, 183, 0.7);
|
||||
--message-info-color: #3B82F6;
|
||||
--panel-content-borderColor: #E5E7EB;
|
||||
|
||||
--card-full-background-color-2: #EEC137;
|
||||
--card-full-background-color-3: #FA8E42;
|
||||
|
||||
@@ -8,7 +8,7 @@ import { isEmpty } from 'ramda';
|
||||
import '@xyflow/react/dist/style.css';
|
||||
|
||||
// store
|
||||
import { useStore, storeSet, storeGet } from '../../store';
|
||||
import { useStore, storeSet } from '../../store';
|
||||
|
||||
// nodes
|
||||
import NodeInitialForm from './components/NodeInitialForm';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import React from 'react';
|
||||
import { classNames } from 'primereact/utils';
|
||||
import { isEmpty, isNil } from 'ramda';
|
||||
import { isNil } from 'ramda';
|
||||
|
||||
// components
|
||||
import { Controller } from 'react-hook-form';
|
||||
|
||||
@@ -39,7 +39,7 @@ const BandoApplicationPreview = () => {
|
||||
const [formData, setFormData] = useState([]);
|
||||
const [formInitialData, setFormInitialData] = useState(null);
|
||||
const [bandoTitle, setBandoTitle] = useState('');
|
||||
const [bandoId, setBandoId] = useState(0);
|
||||
const [, setBandoId] = useState(0);
|
||||
const [formId, setFormId] = useState('');
|
||||
const [totalSteps, setTotalSteps] = useState(0);
|
||||
const [applicationStatus, setApplicationStatus] = useState('');
|
||||
|
||||
@@ -15,7 +15,6 @@ import set404FromErrorResponse from '../../helpers/set404FromErrorResponse';
|
||||
// components
|
||||
import { Button } from 'primereact/button';
|
||||
import { Dropdown } from 'primereact/dropdown';
|
||||
import FlowBuilder from '../../components/FlowBuilder';
|
||||
import { Messages } from 'primereact/messages';
|
||||
import FlowService from '../../service/flow-service';
|
||||
import { confirmPopup, ConfirmPopup } from 'primereact/confirmpopup';
|
||||
@@ -223,6 +222,10 @@ const BandoFlowEdit = () => {
|
||||
const initialFormObj = head(flowForms.filter(o => String(o.id) === String(initialForm)));
|
||||
let finalFormObj = null;
|
||||
|
||||
if (!initialFormObj) {
|
||||
return;
|
||||
}
|
||||
|
||||
const relevantFields = initialFormObj
|
||||
? initialFormObj.content
|
||||
.filter(o => ['radio', 'select'].includes(o.name))
|
||||
@@ -323,60 +326,6 @@ const BandoFlowEdit = () => {
|
||||
|
||||
<div className="appPage__spacer"></div>
|
||||
|
||||
<div className="appPageSection">
|
||||
{forms.length >= 2 && isFlowAllowed
|
||||
? <div className="flowContainer">
|
||||
<div className="flowContainer__level">
|
||||
<div className="flowContainer__flowItem">
|
||||
<label htmlFor="mainField">{__('Scegli form iniziale', 'gepafin')}</label>
|
||||
<Dropdown
|
||||
id="initialForm"
|
||||
disabled={'PUBLISH' === bandoStatus}
|
||||
value={initialForm}
|
||||
onChange={(e) => updateInitialForm(e.value)}
|
||||
optionDisabled={(opt) => finalForm === opt.value || isEmpty(opt.value)}
|
||||
options={formOptions}
|
||||
optionLabel="label"
|
||||
optionValue="value"
|
||||
placeholder={__('Scegli il form', 'gepafin')}/>
|
||||
{initialForm && forms.length > 2 && mainFieldOptions
|
||||
? <div className="appForm__field">
|
||||
<label htmlFor="mainField">{__('Scegli il campo principale', 'gepafin')}</label>
|
||||
<Dropdown
|
||||
id="mainField"
|
||||
disabled={'PUBLISH' === bandoStatus}
|
||||
value={mainField}
|
||||
onChange={(e) => setMainField(e.value)}
|
||||
optionDisabled={(opt) => isEmpty(opt.value)}
|
||||
options={mainFieldOptions}
|
||||
optionLabel="label"
|
||||
optionValue="value"
|
||||
placeholder={__('Scegli il campo', 'gepafin')}/>
|
||||
</div> : null}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{forms.length >= 2 && initialForm
|
||||
? <div className="flowContainer__level">
|
||||
<div className="flowContainer__flowItem">
|
||||
<label htmlFor="mainField">{__('Scegli form finale', 'gepafin')}</label>
|
||||
<Dropdown
|
||||
id="finalForm"
|
||||
disabled={'PUBLISH' === bandoStatus}
|
||||
value={finalForm}
|
||||
onChange={(e) => setFinalForm(e.value)}
|
||||
optionDisabled={(opt) => initialForm === opt.value || isEmpty(opt.value)}
|
||||
options={formOptions}
|
||||
optionLabel="label"
|
||||
optionValue="value"
|
||||
placeholder={__('Scegli il form', 'gepafin')}/>
|
||||
</div>
|
||||
</div> : null}
|
||||
</div> : null}
|
||||
</div>
|
||||
|
||||
<div className="appPage__spacer"></div>
|
||||
|
||||
{/*<div className="appPageSection">
|
||||
<div className="appForm__cols">
|
||||
<div className="appForm__field">
|
||||
@@ -440,11 +389,61 @@ const BandoFlowEdit = () => {
|
||||
|
||||
<div className="appPageSection">
|
||||
<Messages ref={flowMsgs}/>
|
||||
{/*{forms.length >= 2 && isFlowAllowed
|
||||
? <FlowBuilder
|
||||
initialForm={initialForm}
|
||||
finalForm={finalForm}
|
||||
mainField={mainField}/> : null}*/}
|
||||
|
||||
{forms.length >= 2 && isFlowAllowed
|
||||
? <div className="flowContainer">
|
||||
<div className="flowContainer__level">
|
||||
<div className="flowContainer__flowItem initialForm">
|
||||
<div className="flowContainer__flowItemInner initialForm">
|
||||
<label htmlFor="mainField">{__('Scegli form iniziale', 'gepafin')}</label>
|
||||
<Dropdown
|
||||
id="initialForm"
|
||||
disabled={'PUBLISH' === bandoStatus}
|
||||
value={initialForm}
|
||||
onChange={(e) => updateInitialForm(e.value)}
|
||||
optionDisabled={(opt) => finalForm === opt.value || isEmpty(opt.value)}
|
||||
options={formOptions}
|
||||
optionLabel="label"
|
||||
optionValue="value"
|
||||
placeholder={__('Scegli il form', 'gepafin')}/>
|
||||
{initialForm && forms.length > 2 && mainFieldOptions
|
||||
? <div className="appForm__field">
|
||||
<label
|
||||
htmlFor="mainField">{__('Scegli il campo principale', 'gepafin')}</label>
|
||||
<Dropdown
|
||||
id="mainField"
|
||||
disabled={'PUBLISH' === bandoStatus}
|
||||
value={mainField}
|
||||
onChange={(e) => setMainField(e.value)}
|
||||
optionDisabled={(opt) => isEmpty(opt.value)}
|
||||
options={mainFieldOptions}
|
||||
optionLabel="label"
|
||||
optionValue="value"
|
||||
placeholder={__('Scegli il campo', 'gepafin')}/>
|
||||
</div> : null}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{forms.length >= 2 && initialForm
|
||||
? <div className="flowContainer__level">
|
||||
<div className="flowContainer__flowItem">
|
||||
<div className="flowContainer__flowItemInner finalForm">
|
||||
<label htmlFor="mainField">{__('Scegli form finale', 'gepafin')}</label>
|
||||
<Dropdown
|
||||
id="finalForm"
|
||||
disabled={'PUBLISH' === bandoStatus}
|
||||
value={finalForm}
|
||||
onChange={(e) => setFinalForm(e.value)}
|
||||
optionDisabled={(opt) => initialForm === opt.value || isEmpty(opt.value)}
|
||||
options={formOptions}
|
||||
optionLabel="label"
|
||||
optionValue="value"
|
||||
placeholder={__('Scegli il form', 'gepafin')}/>
|
||||
</div>
|
||||
</div>
|
||||
</div> : null}
|
||||
</div> : null}
|
||||
</div>
|
||||
|
||||
<div className="appPage__spacer"></div>
|
||||
|
||||
@@ -50,7 +50,8 @@ const ArchiveDocument = ({ ndg = '', fileId = 0 }) => {
|
||||
}
|
||||
|
||||
const submitData = () => {
|
||||
console.log('submitData', modalData)
|
||||
console.log('submitData', modalData);
|
||||
//setLoading(true);
|
||||
}
|
||||
|
||||
useEffect(() => {
|
||||
|
||||
@@ -181,6 +181,7 @@ const DomandaEditPreInstructor = () => {
|
||||
motivation
|
||||
}
|
||||
|
||||
setLoading(true);
|
||||
ApplicationEvaluationService.updateEvaluation(data.assignedApplicationId, formData, updateStatusCallback, errUpdateStatusCallback);
|
||||
}
|
||||
|
||||
@@ -194,6 +195,7 @@ const DomandaEditPreInstructor = () => {
|
||||
motivation
|
||||
}
|
||||
|
||||
setLoading(true);
|
||||
ApplicationEvaluationService.updateEvaluation(data.assignedApplicationId, formData, updateStatusCallback, errUpdateStatusCallback);
|
||||
}
|
||||
|
||||
@@ -207,7 +209,7 @@ const DomandaEditPreInstructor = () => {
|
||||
});
|
||||
}
|
||||
}
|
||||
storeSet.main.unsetAsyncRequest();
|
||||
setLoading(false);
|
||||
}
|
||||
|
||||
const errUpdateStatusCallback = (data) => {
|
||||
@@ -219,7 +221,7 @@ const DomandaEditPreInstructor = () => {
|
||||
});
|
||||
}
|
||||
set404FromErrorResponse(data);
|
||||
storeSet.main.unsetAsyncRequest();
|
||||
setLoading(false);
|
||||
}
|
||||
|
||||
const displayCriterionData = (id) => {
|
||||
@@ -377,6 +379,7 @@ const DomandaEditPreInstructor = () => {
|
||||
&& !isEmpty(appointmentData.duration) && appointmentData.duration !== 0 && appointmentData.amount !== 0
|
||||
) {
|
||||
console.log(appointmentData);
|
||||
//setLoading(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user