@redneckz/wildless-cms-uni-blocks 0.14.598 → 0.14.599

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/bundle/bundle.umd.js +35 -6
  2. package/bundle/bundle.umd.min.js +1 -1
  3. package/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  4. package/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +7 -1
  5. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +9 -3
  6. package/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  7. package/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  8. package/dist/components/ApplicationLeadForm/getInitialFormState.js +6 -1
  9. package/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  10. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +7 -1
  11. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -1
  12. package/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  13. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +9 -3
  14. package/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  15. package/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  16. package/lib/components/ApplicationLeadForm/getInitialFormState.js +6 -1
  17. package/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  18. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +7 -1
  19. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -1
  20. package/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  21. package/mobile/bundle/bundle.umd.js +35 -6
  22. package/mobile/bundle/bundle.umd.min.js +1 -1
  23. package/mobile/bundle/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  24. package/mobile/bundle/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +7 -1
  25. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js +9 -3
  26. package/mobile/dist/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  27. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  28. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js +6 -1
  29. package/mobile/dist/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  30. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +7 -1
  31. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -1
  32. package/mobile/dist/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  33. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js +9 -3
  34. package/mobile/lib/components/ApplicationLeadForm/ApplicationLeadForm.js.map +1 -1
  35. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.d.ts +1 -1
  36. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js +6 -1
  37. package/mobile/lib/components/ApplicationLeadForm/getInitialFormState.js.map +1 -1
  38. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.d.ts +7 -1
  39. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js +12 -1
  40. package/mobile/lib/components/ApplicationLeadForm/useApplicationLeadApi.js.map +1 -1
  41. package/mobile/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +9 -3
  42. package/mobile/src/components/ApplicationLeadForm/getInitialFormState.tsx +12 -1
  43. package/mobile/src/components/ApplicationLeadForm/useApplicationLeadApi.ts +19 -1
  44. package/package.json +1 -1
  45. package/src/components/ApplicationLeadForm/ApplicationLeadForm.tsx +9 -3
  46. package/src/components/ApplicationLeadForm/getInitialFormState.tsx +12 -1
  47. package/src/components/ApplicationLeadForm/useApplicationLeadApi.ts +19 -1
@@ -2568,6 +2568,15 @@
2568
2568
  : _ === (dataValue?.key ?? dataValue);
2569
2569
  }));
2570
2570
 
2571
+ function useLocalStorage(key) {
2572
+ const [storedValue, setStoredValue] = useState(JSON.parse(globalThis.localStorage?.getItem(key) || 'null'));
2573
+ const setValue = useCallback((value) => {
2574
+ globalThis.localStorage?.setItem(key, JSON.stringify(value));
2575
+ setStoredValue(value);
2576
+ }, [key, globalThis.localStorage]);
2577
+ return [storedValue, setValue];
2578
+ }
2579
+
2571
2580
  const CONSENTS = [
2572
2581
  'processPersonalDataLeadFlg',
2573
2582
  'consentProviderFlg',
@@ -2613,7 +2622,12 @@
2613
2622
  participantAddress: '',
2614
2623
  participantDateRegistration: undefined,
2615
2624
  };
2616
- const getInitialFormState = (inputs, typeForm = '') => {
2625
+ const getInitialFormState = (inputs, savedForm, typeForm = '') => {
2626
+ if (savedForm) {
2627
+ const formState = JSON.parse(savedForm);
2628
+ formState.birthday = new Date(formState?.birthday || 0);
2629
+ return formState;
2630
+ }
2617
2631
  const formState = Object.fromEntries(inputs.map((_) => [
2618
2632
  _.name,
2619
2633
  (_.fieldType === 'ved' && _?.defaultValue) || initialFormState[_.name],
@@ -3028,8 +3042,16 @@
3028
3042
  };
3029
3043
  };
3030
3044
 
3031
- const useApplicationLeadApi = (inputs, programId) => {
3045
+ const useApplicationLeadApi = ({ inputs, programId, saveForm }) => {
3032
3046
  const [responseStatus, setResponseStatus] = useState('');
3047
+ const [, setTaskId] = useLocalStorage('taskId');
3048
+ const [, setProfileId] = useLocalStorage('profileId');
3049
+ const [, setParticipantId] = useLocalStorage('participantId');
3050
+ const saveUserData = useCallback((participantId, taskId, profileId) => {
3051
+ setParticipantId(participantId);
3052
+ setTaskId(taskId);
3053
+ setProfileId(profileId);
3054
+ }, []);
3033
3055
  // eslint-disable-next-line consistent-return
3034
3056
  const handleSubmit = useCallback(async (formData) => {
3035
3057
  const feedbackValidator = objectValidator(getObjectValidator(inputs));
@@ -3050,6 +3072,8 @@
3050
3072
  programId,
3051
3073
  });
3052
3074
  await RETAIL_API.UpdateUserTask(getUpdateUserTaskData(participantId, taskId, profileId, formData));
3075
+ saveUserData(participantId, taskId, profileId);
3076
+ saveForm(JSON.stringify(formData));
3053
3077
  globalThis.location.href = '/credit-lead';
3054
3078
  }
3055
3079
  catch {
@@ -3092,12 +3116,17 @@
3092
3116
  }, []);
3093
3117
  };
3094
3118
 
3095
- const ApplicationLeadForm = JSX(({ className, title, programId, typeForm = '', sections = [], button, ...rest }) => {
3119
+ const ApplicationLeadForm = JSX(({ className, title, programId = '', typeForm = '', sections = [], button, ...rest }) => {
3096
3120
  const inputs = (sections?.flatMap((_) => _?.inputs) || []);
3097
- const initialFormState = getInitialFormState(inputs, typeForm);
3098
3121
  const [responseType, setResponseType] = useState('');
3099
3122
  useInitApplicationLead();
3100
- const { handleSubmit, responseStatus } = useApplicationLeadApi(inputs, programId || '');
3123
+ const [leadForm, setLeadForm] = useLocalStorage('leadForm');
3124
+ const initialFormState = getInitialFormState(inputs, leadForm, typeForm);
3125
+ const { handleSubmit, responseStatus } = useApplicationLeadApi({
3126
+ inputs,
3127
+ programId,
3128
+ saveForm: setLeadForm,
3129
+ });
3101
3130
  if (responseStatus) {
3102
3131
  const responseTypeDialog = useResponseTypeDialog({ responseType: responseStatus, typeForm });
3103
3132
  responseTypeDialog.open();
@@ -7556,7 +7585,7 @@
7556
7585
  slots: () => [HEADER_SLOT, FOOTER_SLOT, STICKY_FOOTER_SLOT],
7557
7586
  });
7558
7587
 
7559
- const packageVersion = "0.14.597";
7588
+ const packageVersion = "0.14.598";
7560
7589
 
7561
7590
  exports.Blocks = Blocks;
7562
7591
  exports.ContentPage = ContentPage;