@legalplace/wizardx-core 2.3.0 → 2.5.0

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 (543) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/dist/App.d.ts +5 -5
  3. package/dist/App.js +22 -35
  4. package/dist/App.test.js +2 -2
  5. package/dist/Globals.d.ts +4 -0
  6. package/dist/Globals.js +9 -6
  7. package/dist/Loader.d.ts +1 -0
  8. package/dist/Loader.js +2 -0
  9. package/dist/PluginLoader.d.ts +3 -3
  10. package/dist/PluginLoader.js +22 -26
  11. package/dist/PluginLoader.test.js +6 -6
  12. package/dist/Shimmer.d.ts +1 -1
  13. package/dist/Shimmer.js +45 -47
  14. package/dist/ThemeLoader.d.ts +6 -5
  15. package/dist/ThemeLoader.js +21 -25
  16. package/dist/ThemeLoader.test.js +4 -3
  17. package/dist/components/PluginRoute.d.ts +3 -3
  18. package/dist/components/PluginRoute.js +8 -7
  19. package/dist/components/SmartScript.d.ts +7 -8
  20. package/dist/components/SmartScript.js +22 -21
  21. package/dist/components/UserLocked/UserLockedComponent.d.ts +1 -1
  22. package/dist/components/UserLocked/UserLockedComponent.js +5 -6
  23. package/dist/components/View.d.ts +8 -4
  24. package/dist/components/View.js +46 -55
  25. package/dist/components/View.test.js +6 -5
  26. package/dist/componentsConnectors/connectBox.d.ts +2 -3
  27. package/dist/componentsConnectors/connectBox.js +4 -4
  28. package/dist/componentsConnectors/connectBox.test.js +7 -7
  29. package/dist/componentsConnectors/connectDocument.d.ts +0 -1
  30. package/dist/componentsConnectors/connectDocument.js +6 -6
  31. package/dist/componentsConnectors/connectDocument.test.js +5 -5
  32. package/dist/componentsConnectors/connectHeader.d.ts +0 -1
  33. package/dist/componentsConnectors/connectHeader.js +2 -2
  34. package/dist/componentsConnectors/connectMetaTitle.d.ts +0 -1
  35. package/dist/componentsConnectors/connectMetaTitle.js +2 -2
  36. package/dist/componentsConnectors/connectMetaTitle.test.js +3 -3
  37. package/dist/componentsConnectors/connectOption.d.ts +2 -3
  38. package/dist/componentsConnectors/connectOption.js +9 -9
  39. package/dist/componentsConnectors/connectPagination.d.ts +0 -1
  40. package/dist/componentsConnectors/connectPagination.js +3 -3
  41. package/dist/componentsConnectors/connectPreview.d.ts +0 -1
  42. package/dist/componentsConnectors/connectPreview.js +2 -2
  43. package/dist/componentsConnectors/connectProgress.d.ts +0 -1
  44. package/dist/componentsConnectors/connectProgress.js +3 -3
  45. package/dist/componentsConnectors/connectRootOption.d.ts +2 -3
  46. package/dist/componentsConnectors/connectRootOption.js +2 -2
  47. package/dist/componentsConnectors/connectSection.d.ts +0 -1
  48. package/dist/componentsConnectors/connectSection.js +4 -4
  49. package/dist/componentsConnectors/connectSummary.d.ts +0 -1
  50. package/dist/componentsConnectors/connectSummary.js +2 -2
  51. package/dist/componentsConnectors/connectSummaryItem.d.ts +0 -1
  52. package/dist/componentsConnectors/connectSummaryItem.js +6 -6
  53. package/dist/componentsConnectors/connectTermsheet.d.ts +2 -2
  54. package/dist/componentsConnectors/connectTermsheet.js +43 -46
  55. package/dist/componentsConnectors/connectVariable.d.ts +1 -2
  56. package/dist/componentsConnectors/connectVariable.js +10 -10
  57. package/dist/componentsConnectors/connectWizardWrapper.d.ts +0 -1
  58. package/dist/componentsConnectors/connectWizardWrapper.js +4 -4
  59. package/dist/componentsConnectors/connector/componentConnector.d.ts +8 -8
  60. package/dist/componentsConnectors/connector/componentConnector.js +16 -19
  61. package/dist/componentsConnectors/library.d.ts +61 -0
  62. package/dist/componentsConnectors/library.js +34 -0
  63. package/dist/config.d.ts +1 -1
  64. package/dist/constants/phoneValidation.d.ts +3 -0
  65. package/dist/constants/phoneValidation.js +3 -0
  66. package/dist/helpers/outputsParsing.d.ts +1 -1
  67. package/dist/helpers/outputsParsing.js +25 -25
  68. package/dist/helpers/preloadTheme.js +1 -1
  69. package/dist/helpers/scriptsLoader.d.ts +1 -0
  70. package/dist/helpers/scriptsLoader.js +24 -0
  71. package/dist/helpers/sendinblueHelper.d.ts +3 -3
  72. package/dist/helpers/sendinblueHelper.js +29 -18
  73. package/dist/hooks/usePrevious.js +1 -1
  74. package/dist/libs/ConditionsInitiator.d.ts +1 -1
  75. package/dist/libs/ConditionsInitiator.js +2 -2
  76. package/dist/libs/ConditionsRunner/DataPopulator.js +7 -7
  77. package/dist/libs/ConditionsRunner.d.ts +3 -3
  78. package/dist/libs/ConditionsRunner.js +43 -43
  79. package/dist/libs/DocumentsOutputs.d.ts +2 -2
  80. package/dist/libs/DocumentsOutputs.js +5 -5
  81. package/dist/libs/Eval/EvalBase.js +17 -17
  82. package/dist/libs/Eval/EvalFunctions.d.ts +1 -1
  83. package/dist/libs/Eval/EvalFunctions.js +100 -100
  84. package/dist/libs/Eval/NumbersToLetters.js +46 -46
  85. package/dist/libs/EvalVariable.d.ts +2 -2
  86. package/dist/libs/EvalVariable.js +30 -29
  87. package/dist/libs/EventsTracking.js +32 -32
  88. package/dist/libs/Extracts.js +20 -20
  89. package/dist/libs/InputsInitiator.d.ts +1 -1
  90. package/dist/libs/InputsInitiator.js +15 -15
  91. package/dist/libs/NumAuto.js +1 -1
  92. package/dist/libs/OvcConverter.d.ts +1 -1
  93. package/dist/libs/OvcConverter.js +23 -23
  94. package/dist/libs/PathReader.d.ts +1 -1
  95. package/dist/libs/PathReader.js +22 -22
  96. package/dist/libs/SectionValidity.js +3 -3
  97. package/dist/libs/SmartScriptStore.d.ts +6 -6
  98. package/dist/libs/SmartScriptStore.js +33 -33
  99. package/dist/misc/test_model.d.ts +2 -2
  100. package/dist/misc/test_model.js +3807 -3807
  101. package/dist/polyfills/index.d.ts +5 -0
  102. package/dist/polyfills/index.js +5 -0
  103. package/dist/polyfills/prepend.js +2 -2
  104. package/dist/polyfills/stringRepeat.js +4 -4
  105. package/dist/redux/actions/app.d.ts +12 -12
  106. package/dist/redux/actions/app.js +1 -1
  107. package/dist/redux/actions/conditions.d.ts +2 -2
  108. package/dist/redux/actions/conditions.js +1 -1
  109. package/dist/redux/actions/inputs.d.ts +3 -1
  110. package/dist/redux/actions/inputs.js +6 -1
  111. package/dist/redux/actions/library.d.ts +74 -0
  112. package/dist/redux/actions/library.js +11 -0
  113. package/dist/redux/actions/mandatories.d.ts +1 -1
  114. package/dist/redux/actions/mandatories.js +1 -1
  115. package/dist/redux/actions/references.d.ts +4 -4
  116. package/dist/redux/actions/references.js +1 -1
  117. package/dist/redux/actions/sagas/data.d.ts +1 -1
  118. package/dist/redux/actions/sagas/data.js +1 -1
  119. package/dist/redux/actions/sagas/model.d.ts +3 -3
  120. package/dist/redux/actions/sagas/model.js +3 -3
  121. package/dist/redux/actions/sagas/user.d.ts +1 -1
  122. package/dist/redux/actions/sagas/user.js +1 -1
  123. package/dist/redux/actions/smartscript.d.ts +3 -3
  124. package/dist/redux/actions/smartscript.js +1 -1
  125. package/dist/redux/actions/user.d.ts +4 -4
  126. package/dist/redux/actions/user.js +1 -1
  127. package/dist/redux/constants/app.js +22 -22
  128. package/dist/redux/constants/conditions.js +8 -8
  129. package/dist/redux/constants/inputs.d.ts +1 -0
  130. package/dist/redux/constants/inputs.js +7 -6
  131. package/dist/redux/constants/mandatories.js +6 -6
  132. package/dist/redux/constants/references.js +3 -3
  133. package/dist/redux/constants/sagas/data.js +1 -1
  134. package/dist/redux/constants/sagas/model.js +2 -2
  135. package/dist/redux/constants/sagas/user.js +2 -2
  136. package/dist/redux/constants/smartscript.js +4 -4
  137. package/dist/redux/constants/user.js +3 -3
  138. package/dist/redux/listeners/subscriber.d.ts +2 -2
  139. package/dist/redux/middlewares/conditionsWatcherMiddleware.d.ts +2 -2
  140. package/dist/redux/middlewares/conditionsWatcherMiddleware.js +28 -28
  141. package/dist/redux/middlewares/evaluationsWatcherMiddleware.d.ts +4 -2
  142. package/dist/redux/middlewares/evaluationsWatcherMiddleware.js +10 -10
  143. package/dist/redux/middlewares/mandatoriesWatcherMiddleware.d.ts +2 -2
  144. package/dist/redux/middlewares/mandatoriesWatcherMiddleware.js +13 -13
  145. package/dist/redux/middlewares/multiplesActionsMiddleware.d.ts +2 -2
  146. package/dist/redux/middlewares/multiplesActionsMiddleware.js +2 -2
  147. package/dist/redux/middlewares/paginationWatcherMiddleware.d.ts +3 -3
  148. package/dist/redux/middlewares/paginationWatcherMiddleware.js +24 -24
  149. package/dist/redux/middlewares/pluginsHookMiddleware.d.ts +1 -1
  150. package/dist/redux/middlewares/pluginsHookMiddleware.js +1 -1
  151. package/dist/redux/middlewares/prefillerWatcherMiddleware.d.ts +2 -2
  152. package/dist/redux/middlewares/prefillerWatcherMiddleware.js +28 -28
  153. package/dist/redux/middlewares/smartscriptMiddleware.d.ts +2 -2
  154. package/dist/redux/middlewares/smartscriptMiddleware.js +33 -15
  155. package/dist/redux/middlewares/thirdpartyScriptsMiddleware.d.ts +5 -0
  156. package/dist/redux/middlewares/thirdpartyScriptsMiddleware.js +16 -0
  157. package/dist/redux/reducers/app/customizations/initCustomizationAutoDefault.d.ts +2 -2
  158. package/dist/redux/reducers/app/customizations/initCustomizationMeta.d.ts +2 -2
  159. package/dist/redux/reducers/app/instance/initInstance.d.ts +2 -2
  160. package/dist/redux/reducers/app/instance/setDataStatus.d.ts +2 -2
  161. package/dist/redux/reducers/app/instance/updateInstance.d.ts +2 -2
  162. package/dist/redux/reducers/app/instance/updateInstancePaid.d.ts +2 -2
  163. package/dist/redux/reducers/app/meta/fetchModelFailed.d.ts +1 -1
  164. package/dist/redux/reducers/app/meta/fetchModelFailed.js +1 -1
  165. package/dist/redux/reducers/app/meta/fetchModelNonBlocking.d.ts +1 -1
  166. package/dist/redux/reducers/app/meta/fetchModelNonBlocking.js +1 -1
  167. package/dist/redux/reducers/app/meta/fetchModelSucceeded.d.ts +1 -1
  168. package/dist/redux/reducers/app/meta/fetchModelSucceeded.js +1 -1
  169. package/dist/redux/reducers/app/meta/fetchModelUnhealthy.d.ts +2 -2
  170. package/dist/redux/reducers/app/meta/fetchModelUnhealthy.js +1 -1
  171. package/dist/redux/reducers/app/meta/fetchModelUserLocked.d.ts +1 -1
  172. package/dist/redux/reducers/app/meta/fetchModelUserLocked.js +1 -1
  173. package/dist/redux/reducers/app/meta/initMeta.d.ts +2 -2
  174. package/dist/redux/reducers/app/meta/setModelUuid.d.ts +2 -2
  175. package/dist/redux/reducers/app/pagination/goNextPage.d.ts +1 -1
  176. package/dist/redux/reducers/app/pagination/goNextPage.js +1 -1
  177. package/dist/redux/reducers/app/pagination/goPage.d.ts +2 -2
  178. package/dist/redux/reducers/app/pagination/goPage.js +2 -2
  179. package/dist/redux/reducers/app/pagination/goPreviousPage.d.ts +1 -1
  180. package/dist/redux/reducers/app/pagination/goPreviousPage.js +1 -1
  181. package/dist/redux/reducers/app/pagination/initPagination.d.ts +2 -2
  182. package/dist/redux/reducers/app/pagination/initPagination.js +1 -1
  183. package/dist/redux/reducers/app/pagination/updateAvailableAppStates.d.ts +2 -2
  184. package/dist/redux/reducers/app/pagination/updateAvailableAppStates.js +5 -5
  185. package/dist/redux/reducers/app/wizard/updateAvailableSections.d.ts +2 -2
  186. package/dist/redux/reducers/app/wizard/updateAvailableSections.js +2 -2
  187. package/dist/redux/reducers/app.d.ts +2 -2
  188. package/dist/redux/reducers/app.js +30 -30
  189. package/dist/redux/reducers/conditions/addMultipleOccurency.d.ts +2 -2
  190. package/dist/redux/reducers/conditions/addMultipleOccurency.js +3 -3
  191. package/dist/redux/reducers/conditions/deleteMultipleOccurency.d.ts +2 -2
  192. package/dist/redux/reducers/conditions/deleteMultipleOccurency.js +2 -2
  193. package/dist/redux/reducers/conditions/initConditions.d.ts +2 -2
  194. package/dist/redux/reducers/conditions/updateDocumentConditions.d.ts +2 -2
  195. package/dist/redux/reducers/conditions/updateOptionConditions.d.ts +2 -2
  196. package/dist/redux/reducers/conditions/updateOptionValidatorCondition.d.ts +2 -2
  197. package/dist/redux/reducers/conditions/updatePrefillerConditions.d.ts +2 -2
  198. package/dist/redux/reducers/conditions/updatePrefillerConditions.js +2 -2
  199. package/dist/redux/reducers/conditions/updateSectionConditions.d.ts +2 -2
  200. package/dist/redux/reducers/conditions/updateVariableConditions.d.ts +2 -2
  201. package/dist/redux/reducers/conditions/updateVariableValidatorCondition.d.ts +2 -2
  202. package/dist/redux/reducers/conditions.d.ts +2 -2
  203. package/dist/redux/reducers/conditions.js +13 -13
  204. package/dist/redux/reducers/inputs/addMultipleOccurency.d.ts +2 -2
  205. package/dist/redux/reducers/inputs/addMultipleOccurency.js +4 -4
  206. package/dist/redux/reducers/inputs/deleteMultipleOccurency.d.ts +2 -2
  207. package/dist/redux/reducers/inputs/deleteMultipleOccurency.js +2 -2
  208. package/dist/redux/reducers/inputs/initOption.d.ts +2 -2
  209. package/dist/redux/reducers/inputs/initVariable.d.ts +2 -2
  210. package/dist/redux/reducers/inputs/updateOptionInput.d.ts +2 -2
  211. package/dist/redux/reducers/inputs/updateVariableInput.d.ts +2 -2
  212. package/dist/redux/reducers/inputs.d.ts +2 -2
  213. package/dist/redux/reducers/inputs.js +8 -8
  214. package/dist/redux/reducers/mandatories/addMultipleOccurency.d.ts +2 -2
  215. package/dist/redux/reducers/mandatories/addMultipleOccurency.js +2 -2
  216. package/dist/redux/reducers/mandatories/deleteMultipleOccurency.d.ts +2 -2
  217. package/dist/redux/reducers/mandatories/deleteMultipleOccurency.js +2 -2
  218. package/dist/redux/reducers/mandatories/initMandatoryOption.d.ts +2 -2
  219. package/dist/redux/reducers/mandatories/initMandatoryVariable.d.ts +2 -2
  220. package/dist/redux/reducers/mandatories/setMandatoryIgnore.d.ts +2 -2
  221. package/dist/redux/reducers/mandatories/setMandatoryOption.d.ts +2 -2
  222. package/dist/redux/reducers/mandatories/setMandatorySection.d.ts +2 -2
  223. package/dist/redux/reducers/mandatories/setMandatoryVariable.d.ts +2 -2
  224. package/dist/redux/reducers/mandatories.d.ts +2 -2
  225. package/dist/redux/reducers/mandatories.js +11 -11
  226. package/dist/redux/reducers/references/initReferences.d.ts +2 -2
  227. package/dist/redux/reducers/references/updateOptionMeta.d.ts +2 -2
  228. package/dist/redux/reducers/references/updateOptionMeta.js +2 -2
  229. package/dist/redux/reducers/references/updateVariableMeta.d.ts +2 -2
  230. package/dist/redux/reducers/references/updateVariableMeta.js +2 -2
  231. package/dist/redux/reducers/references.d.ts +2 -2
  232. package/dist/redux/reducers/references.js +5 -5
  233. package/dist/redux/reducers/smartscript/enableSmartScript.d.ts +1 -1
  234. package/dist/redux/reducers/smartscript/initSmartScriptTriggers.d.ts +2 -2
  235. package/dist/redux/reducers/smartscript/updateSmartscriptOptionHidden.d.ts +2 -2
  236. package/dist/redux/reducers/smartscript/updateSmartscriptVariableHidden.d.ts +2 -2
  237. package/dist/redux/reducers/smartscript.d.ts +2 -2
  238. package/dist/redux/reducers/smartscript.js +6 -6
  239. package/dist/redux/reducers/user/initUser.d.ts +2 -2
  240. package/dist/redux/reducers/user/setUserStatus.d.ts +2 -2
  241. package/dist/redux/reducers/user/setUserValidToken.d.ts +2 -2
  242. package/dist/redux/reducers/user.d.ts +2 -2
  243. package/dist/redux/reducers/user.js +9 -9
  244. package/dist/redux/routerHistory.d.ts +2 -2
  245. package/dist/redux/routerHistory.js +5 -5
  246. package/dist/redux/sagas/fetchModel.d.ts +4 -4
  247. package/dist/redux/sagas/fetchModel.js +79 -131
  248. package/dist/redux/sagas/fetchModel.test.js +2 -3
  249. package/dist/redux/sagas/homogeneousRadioInputsSaga.js +5 -5
  250. package/dist/redux/sagas/initInputs.d.ts +5 -0
  251. package/dist/redux/sagas/initInputs.js +63 -0
  252. package/dist/redux/sagas/runner.d.ts +1 -1
  253. package/dist/redux/sagas/runner.js +7 -5
  254. package/dist/redux/sagas/saveData.js +34 -25
  255. package/dist/redux/sagas/setDefaults.js +8 -8
  256. package/dist/redux/sagas/setUserEmail.js +43 -43
  257. package/dist/redux/selectors/app.d.ts +1 -0
  258. package/dist/redux/selectors/app.js +26 -25
  259. package/dist/redux/selectors/conditions.js +34 -34
  260. package/dist/redux/selectors/inputs.d.ts +1 -1
  261. package/dist/redux/selectors/inputs.js +8 -8
  262. package/dist/{componentsConnectors/connector/connectorSelectors.d.ts → redux/selectors/library.d.ts} +17 -16
  263. package/dist/redux/selectors/library.js +8 -0
  264. package/dist/redux/selectors/mandatories.js +10 -10
  265. package/dist/redux/selectors/references.d.ts +1 -0
  266. package/dist/redux/selectors/references.js +20 -19
  267. package/dist/redux/selectors/selectors.d.ts +2 -2
  268. package/dist/redux/selectors/selectors.js +2 -2
  269. package/dist/redux/selectors/smartscript.js +5 -5
  270. package/dist/redux/selectors/user.js +5 -5
  271. package/dist/redux/store.d.ts +6 -2
  272. package/dist/redux/store.js +31 -31
  273. package/dist/service/api.manager.d.ts +2 -2
  274. package/dist/service/api.manager.js +46 -46
  275. package/dist/service/auth.service.js +2 -2
  276. package/dist/service/pardot.service.js +2 -2
  277. package/dist/tests-misc/plugins/jestTestPlugin/after.d.ts +1 -1
  278. package/dist/tests-misc/plugins/jestTestPlugin/after.js +2 -2
  279. package/dist/tests-misc/plugins/jestTestPlugin/before.d.ts +1 -1
  280. package/dist/tests-misc/plugins/jestTestPlugin/before.js +2 -5
  281. package/dist/tests-misc/plugins/jestTestPlugin/index.js +4 -4
  282. package/dist/tests-misc/plugins/jestTestPlugin/title.d.ts +1 -1
  283. package/dist/tests-misc/plugins/jestTestPlugin/title.js +2 -2
  284. package/dist/tests-misc/themes/jestTestTheme/components/EmailComponent.d.ts +0 -1
  285. package/dist/tests-misc/themes/jestTestTheme/components/EmailComponent.js +2 -2
  286. package/dist/tests-misc/themes/jestTestTheme/components/TermsheetComponent.d.ts +0 -1
  287. package/dist/tests-misc/themes/jestTestTheme/components/TermsheetComponent.js +2 -2
  288. package/dist/tests-misc/themes/jestTestTheme/components/WizardComponent.d.ts +0 -1
  289. package/dist/tests-misc/themes/jestTestTheme/components/WizardComponent.js +2 -2
  290. package/dist/tests-misc/themes/jestTestTheme/faltyIndex.js +1 -1
  291. package/dist/tests-misc/themes/jestTestTheme/faltyIndexLoader.js +1 -1
  292. package/dist/tests-misc/themes/jestTestTheme/index.js +4 -4
  293. package/dist/types/Actions.type.d.ts +42 -37
  294. package/dist/types/Components.type.d.ts +4 -5
  295. package/dist/types/State.type.d.ts +9 -9
  296. package/dist/types/Termsheet.type.d.ts +4 -4
  297. package/dist/types/api.type.d.ts +4 -4
  298. package/dist/types/config.type.d.ts +2 -3
  299. package/dist/types/getActions.type.d.ts +2 -2
  300. package/dist/types/getConnectors.type.d.ts +2 -3
  301. package/dist/types/getSelectors.type.d.ts +2 -2
  302. package/dist/wizard-params.d.ts +1 -1
  303. package/dist/wizard-params.js +16 -16
  304. package/jest.config.ts +1 -1
  305. package/package.json +16 -8
  306. package/setupJest.ts +8 -0
  307. package/src/App.tsx +22 -25
  308. package/src/Globals.ts +12 -8
  309. package/src/Loader.tsx +8 -0
  310. package/src/PluginLoader.tsx +20 -37
  311. package/src/Shimmer.tsx +58 -45
  312. package/src/ThemeLoader.test.tsx +1 -0
  313. package/src/ThemeLoader.tsx +27 -42
  314. package/src/components/PluginRoute.tsx +8 -6
  315. package/src/components/SmartScript.tsx +29 -28
  316. package/src/components/UserLocked/UserLockedComponent.tsx +3 -3
  317. package/src/components/View.test.tsx +3 -0
  318. package/src/components/View.tsx +52 -54
  319. package/src/componentsConnectors/connectBox.tsx +6 -6
  320. package/src/componentsConnectors/connectDocument.tsx +6 -6
  321. package/src/componentsConnectors/connectHeader.tsx +2 -2
  322. package/src/componentsConnectors/connectMetaTitle.tsx +2 -2
  323. package/src/componentsConnectors/connectOption.tsx +11 -11
  324. package/src/componentsConnectors/connectPagination.tsx +3 -3
  325. package/src/componentsConnectors/connectPreview.tsx +2 -2
  326. package/src/componentsConnectors/connectProgress.tsx +3 -3
  327. package/src/componentsConnectors/connectRootOption.tsx +4 -4
  328. package/src/componentsConnectors/connectSection.tsx +4 -4
  329. package/src/componentsConnectors/connectSummary.tsx +2 -2
  330. package/src/componentsConnectors/connectSummaryItem.tsx +6 -6
  331. package/src/componentsConnectors/connectTermsheet.tsx +46 -46
  332. package/src/componentsConnectors/connectVariable.tsx +11 -11
  333. package/src/componentsConnectors/connectWizardWrapper.tsx +4 -4
  334. package/src/componentsConnectors/connector/componentConnector.tsx +22 -20
  335. package/src/componentsConnectors/library.ts +35 -0
  336. package/src/config.test.ts +2 -1
  337. package/src/config.ts +1 -1
  338. package/src/constants/phoneValidation.ts +6 -0
  339. package/src/definitions/path.join.d.ts +1 -1
  340. package/src/helpers/outputsParsing.ts +26 -26
  341. package/src/helpers/preloadTheme.ts +2 -2
  342. package/src/helpers/scriptsLoader.ts +20 -0
  343. package/src/helpers/sendinblueHelper.ts +23 -17
  344. package/src/hooks/usePrevious.ts +1 -1
  345. package/src/libs/ConditionsInitiator.ts +3 -3
  346. package/src/libs/ConditionsRunner/DataPopulator.ts +7 -7
  347. package/src/libs/ConditionsRunner.ts +53 -53
  348. package/src/libs/DocumentsOutputs.ts +7 -7
  349. package/src/libs/Eval/EvalBase.ts +17 -17
  350. package/src/libs/Eval/EvalFunctions.ts +100 -100
  351. package/src/libs/Eval/NumbersToLetters.ts +48 -48
  352. package/src/libs/EvalVariable.ts +34 -31
  353. package/src/libs/EventsTracking.ts +38 -38
  354. package/src/libs/Extracts.ts +21 -21
  355. package/src/libs/InputsInitiator.ts +16 -16
  356. package/src/libs/NumAuto.ts +1 -1
  357. package/src/libs/OvcConverter.ts +25 -25
  358. package/src/libs/PathReader.ts +23 -23
  359. package/src/libs/SectionValidity.ts +3 -3
  360. package/src/libs/SmartScriptStore.ts +40 -40
  361. package/src/misc/test_model.ts +3809 -3809
  362. package/src/polyfills/index.ts +5 -0
  363. package/src/polyfills/prepend.ts +2 -2
  364. package/src/polyfills/stringRepeat.ts +4 -4
  365. package/src/redux/actions/app.ts +13 -13
  366. package/src/redux/actions/conditions.ts +3 -3
  367. package/src/redux/actions/inputs.ts +18 -2
  368. package/src/redux/actions/library.ts +23 -0
  369. package/src/redux/actions/mandatories.ts +2 -2
  370. package/src/redux/actions/references.ts +5 -5
  371. package/src/redux/actions/sagas/data.ts +2 -2
  372. package/src/redux/actions/sagas/model.ts +6 -6
  373. package/src/redux/actions/sagas/user.ts +2 -2
  374. package/src/redux/actions/smartscript.ts +4 -4
  375. package/src/redux/actions/user.ts +5 -5
  376. package/src/redux/constants/app.ts +22 -22
  377. package/src/redux/constants/conditions.ts +8 -8
  378. package/src/redux/constants/inputs.ts +8 -6
  379. package/src/redux/constants/mandatories.ts +6 -6
  380. package/src/redux/constants/references.ts +3 -3
  381. package/src/redux/constants/sagas/data.ts +1 -1
  382. package/src/redux/constants/sagas/model.ts +2 -2
  383. package/src/redux/constants/sagas/user.ts +2 -2
  384. package/src/redux/constants/smartscript.ts +4 -4
  385. package/src/redux/constants/user.ts +3 -3
  386. package/src/redux/listeners/subscriber.ts +2 -2
  387. package/src/redux/middlewares/conditionsWatcherMiddleware.ts +31 -31
  388. package/src/redux/middlewares/evaluationsWatcherMiddleware.test.ts +1 -1
  389. package/src/redux/middlewares/evaluationsWatcherMiddleware.ts +13 -13
  390. package/src/redux/middlewares/mandatoriesWatcherMiddleware.ts +16 -16
  391. package/src/redux/middlewares/multiplesActionsMiddleware.ts +6 -6
  392. package/src/redux/middlewares/paginationWatcherMiddleware.ts +27 -27
  393. package/src/redux/middlewares/pluginsHookMiddleware.ts +2 -2
  394. package/src/redux/middlewares/prefillerWatcherMiddleware.ts +31 -31
  395. package/src/redux/middlewares/smartscriptMiddleware.ts +61 -20
  396. package/src/redux/middlewares/thirdpartyScriptsMiddleware.ts +41 -0
  397. package/src/redux/reducers/app/customizations/initCustomizationAutoDefault.ts +2 -2
  398. package/src/redux/reducers/app/customizations/initCustomizationMeta.ts +2 -2
  399. package/src/redux/reducers/app/instance/initInstance.ts +2 -2
  400. package/src/redux/reducers/app/instance/setDataStatus.ts +2 -2
  401. package/src/redux/reducers/app/instance/updateInstance.ts +2 -2
  402. package/src/redux/reducers/app/instance/updateInstancePaid.ts +2 -2
  403. package/src/redux/reducers/app/meta/fetchModelFailed.ts +2 -2
  404. package/src/redux/reducers/app/meta/fetchModelNonBlocking.ts +2 -2
  405. package/src/redux/reducers/app/meta/fetchModelSucceeded.ts +2 -2
  406. package/src/redux/reducers/app/meta/fetchModelUnhealthy.ts +3 -3
  407. package/src/redux/reducers/app/meta/fetchModelUserLocked.ts +2 -2
  408. package/src/redux/reducers/app/meta/initMeta.ts +2 -2
  409. package/src/redux/reducers/app/meta/setModelUuid.ts +2 -2
  410. package/src/redux/reducers/app/pagination/goNextPage.ts +2 -2
  411. package/src/redux/reducers/app/pagination/goPage.ts +4 -4
  412. package/src/redux/reducers/app/pagination/goPreviousPage.ts +2 -2
  413. package/src/redux/reducers/app/pagination/initPagination.ts +3 -3
  414. package/src/redux/reducers/app/pagination/updateAvailableAppStates.ts +7 -7
  415. package/src/redux/reducers/app/wizard/updateAvailableSections.ts +4 -4
  416. package/src/redux/reducers/app.ts +32 -32
  417. package/src/redux/reducers/conditions/addMultipleOccurency.ts +5 -5
  418. package/src/redux/reducers/conditions/deleteMultipleOccurency.ts +4 -4
  419. package/src/redux/reducers/conditions/initConditions.ts +2 -2
  420. package/src/redux/reducers/conditions/updateDocumentConditions.ts +2 -2
  421. package/src/redux/reducers/conditions/updateOptionConditions.ts +2 -2
  422. package/src/redux/reducers/conditions/updateOptionValidatorCondition.ts +2 -2
  423. package/src/redux/reducers/conditions/updatePrefillerConditions.ts +4 -4
  424. package/src/redux/reducers/conditions/updateSectionConditions.ts +2 -2
  425. package/src/redux/reducers/conditions/updateVariableConditions.ts +2 -2
  426. package/src/redux/reducers/conditions/updateVariableValidatorCondition.ts +2 -2
  427. package/src/redux/reducers/conditions.ts +15 -15
  428. package/src/redux/reducers/inputs/addMultipleOccurency.ts +6 -6
  429. package/src/redux/reducers/inputs/deleteMultipleOccurency.ts +4 -4
  430. package/src/redux/reducers/inputs/initOption.ts +2 -2
  431. package/src/redux/reducers/inputs/initVariable.ts +2 -2
  432. package/src/redux/reducers/inputs/updateOptionInput.ts +2 -2
  433. package/src/redux/reducers/inputs/updateVariableInput.ts +2 -2
  434. package/src/redux/reducers/inputs.ts +10 -10
  435. package/src/redux/reducers/mandatories/addMultipleOccurency.ts +4 -4
  436. package/src/redux/reducers/mandatories/deleteMultipleOccurency.ts +4 -4
  437. package/src/redux/reducers/mandatories/initMandatoryOption.ts +2 -2
  438. package/src/redux/reducers/mandatories/initMandatoryVariable.ts +2 -2
  439. package/src/redux/reducers/mandatories/setMandatoryIgnore.ts +2 -2
  440. package/src/redux/reducers/mandatories/setMandatoryOption.ts +2 -2
  441. package/src/redux/reducers/mandatories/setMandatorySection.ts +2 -2
  442. package/src/redux/reducers/mandatories/setMandatoryVariable.ts +2 -2
  443. package/src/redux/reducers/mandatories.ts +13 -13
  444. package/src/redux/reducers/references/initReferences.ts +2 -2
  445. package/src/redux/reducers/references/updateOptionMeta.ts +4 -4
  446. package/src/redux/reducers/references/updateVariableMeta.ts +4 -4
  447. package/src/redux/reducers/references.ts +7 -7
  448. package/src/redux/reducers/smartscript/enableSmartScript.ts +1 -1
  449. package/src/redux/reducers/smartscript/initSmartScriptTriggers.ts +2 -2
  450. package/src/redux/reducers/smartscript/updateSmartscriptOptionHidden.ts +2 -2
  451. package/src/redux/reducers/smartscript/updateSmartscriptVariableHidden.ts +2 -2
  452. package/src/redux/reducers/smartscript.ts +8 -8
  453. package/src/redux/reducers/user/initUser.ts +2 -2
  454. package/src/redux/reducers/user/setUserStatus.ts +2 -2
  455. package/src/redux/reducers/user/setUserValidToken.ts +2 -2
  456. package/src/redux/reducers/user.ts +11 -11
  457. package/src/redux/routerHistory.ts +6 -6
  458. package/src/redux/sagas/fetchModel.test.ts +2 -5
  459. package/src/redux/sagas/fetchModel.ts +86 -187
  460. package/src/redux/sagas/homogeneousRadioInputsSaga.ts +6 -6
  461. package/src/redux/sagas/initInputs.ts +110 -0
  462. package/src/redux/sagas/runner.ts +8 -6
  463. package/src/redux/sagas/saveData.ts +32 -28
  464. package/src/redux/sagas/setDefaults.ts +8 -8
  465. package/src/redux/sagas/setUserEmail.ts +46 -45
  466. package/src/redux/selectors/app.ts +34 -28
  467. package/src/redux/selectors/conditions.ts +41 -41
  468. package/src/redux/selectors/inputs.ts +10 -10
  469. package/src/redux/selectors/library.ts +17 -0
  470. package/src/redux/selectors/mandatories.ts +10 -10
  471. package/src/redux/selectors/references.ts +25 -21
  472. package/src/redux/selectors/selectors.ts +4 -4
  473. package/src/redux/selectors/smartscript.ts +6 -6
  474. package/src/redux/selectors/user.ts +8 -8
  475. package/src/redux/store.ts +42 -32
  476. package/src/service/api.manager.ts +53 -53
  477. package/src/service/auth.service.ts +2 -2
  478. package/src/service/pardot.service.ts +2 -2
  479. package/src/tests-misc/plugins/jestTestPlugin/after.tsx +1 -1
  480. package/src/tests-misc/plugins/jestTestPlugin/before.tsx +1 -1
  481. package/src/tests-misc/plugins/jestTestPlugin/index.ts +4 -4
  482. package/src/tests-misc/plugins/jestTestPlugin/title.tsx +2 -2
  483. package/src/tests-misc/themes/jestTestTheme/components/EmailComponent.tsx +1 -1
  484. package/src/tests-misc/themes/jestTestTheme/components/TermsheetComponent.tsx +1 -1
  485. package/src/tests-misc/themes/jestTestTheme/components/WizardComponent.tsx +1 -1
  486. package/src/tests-misc/themes/jestTestTheme/faltyIndex.ts +1 -1
  487. package/src/tests-misc/themes/jestTestTheme/faltyIndexLoader.ts +1 -1
  488. package/src/tests-misc/themes/jestTestTheme/index.ts +4 -4
  489. package/src/types/Actions.type.ts +63 -55
  490. package/src/types/Components.type.ts +4 -4
  491. package/src/types/State.type.ts +14 -14
  492. package/src/types/Termsheet.type.ts +4 -4
  493. package/src/types/api.type.ts +4 -4
  494. package/src/types/config.type.ts +3 -3
  495. package/src/types/getActions.type.ts +2 -2
  496. package/src/types/getConnectors.type.ts +2 -2
  497. package/src/types/getSelectors.type.ts +2 -2
  498. package/src/wizard-params.ts +17 -17
  499. package/tsconfig.json +1 -1
  500. package/dist/componentsConnectors/connector/connectorSelectors.js +0 -9
  501. package/dist/componentsConnectors/index.d.ts +0 -16
  502. package/dist/componentsConnectors/index.js +0 -16
  503. package/dist/constants/index.d.ts +0 -1
  504. package/dist/constants/index.js +0 -1
  505. package/dist/helpers/index.d.ts +0 -2
  506. package/dist/helpers/index.js +0 -2
  507. package/dist/hooks/index.d.ts +0 -1
  508. package/dist/hooks/index.js +0 -1
  509. package/dist/index.d.ts +0 -23
  510. package/dist/index.js +0 -23
  511. package/dist/libs/index.d.ts +0 -12
  512. package/dist/libs/index.js +0 -12
  513. package/dist/redux/actions/index.d.ts +0 -8
  514. package/dist/redux/actions/index.js +0 -8
  515. package/dist/redux/actions/sagas/index.d.ts +0 -3
  516. package/dist/redux/actions/sagas/index.js +0 -3
  517. package/dist/redux/constants/index.d.ts +0 -8
  518. package/dist/redux/constants/index.js +0 -8
  519. package/dist/redux/constants/sagas/index.d.ts +0 -3
  520. package/dist/redux/constants/sagas/index.js +0 -3
  521. package/dist/redux/index.d.ts +0 -4
  522. package/dist/redux/index.js +0 -4
  523. package/dist/redux/selectors/index.d.ts +0 -7
  524. package/dist/redux/selectors/index.js +0 -7
  525. package/dist/service/index.d.ts +0 -3
  526. package/dist/service/index.js +0 -3
  527. package/dist/types/index.d.ts +0 -10
  528. package/dist/types/index.js +0 -10
  529. package/src/componentsConnectors/connector/connectorSelectors.ts +0 -19
  530. package/src/componentsConnectors/index.ts +0 -16
  531. package/src/constants/index.ts +0 -1
  532. package/src/helpers/index.ts +0 -2
  533. package/src/hooks/index.ts +0 -1
  534. package/src/index.ts +0 -47
  535. package/src/libs/index.ts +0 -12
  536. package/src/redux/actions/index.ts +0 -8
  537. package/src/redux/actions/sagas/index.ts +0 -3
  538. package/src/redux/constants/index.ts +0 -8
  539. package/src/redux/constants/sagas/index.ts +0 -3
  540. package/src/redux/index.ts +0 -4
  541. package/src/redux/selectors/index.ts +0 -7
  542. package/src/service/index.ts +0 -3
  543. package/src/types/index.ts +0 -10
@@ -1,12 +1,12 @@
1
- import { createSelector } from './selectors';
2
- import { StateType } from '../../types/State.type';
1
+ import { createSelector } from "./selectors";
2
+ import { StateType } from "../../types/State.type";
3
3
  import {
4
4
  selectVariableParents,
5
5
  selectOptionParents,
6
6
  selectVariableParentSection,
7
7
  selectOptionParentSection,
8
- } from './references';
9
- import { selectOptionInputByIndex } from './inputs';
8
+ } from "./references";
9
+ import { selectOptionInputByIndex } from "./inputs";
10
10
 
11
11
  /**
12
12
  * Returns option's condition value
@@ -17,17 +17,17 @@ import { selectOptionInputByIndex } from './inputs';
17
17
  // Let's start by creation the selector
18
18
  const optionConditionValueSelector = createSelector(
19
19
  (state: StateType, id: number, index?: number) => {
20
- if (typeof state.conditions.options[id] === 'undefined') return undefined;
21
- return typeof index === 'number'
20
+ if (typeof state.conditions.options[id] === "undefined") return undefined;
21
+ return typeof index === "number"
22
22
  ? state.conditions.options[id][index]
23
23
  : state.conditions.options[id];
24
24
  },
25
25
  (state, id: number, index?: number) => {
26
- if (typeof state.conditions.options[id] === 'undefined')
26
+ if (typeof state.conditions.options[id] === "undefined")
27
27
  return Math.random();
28
28
  return `${state.conditions.options[id].reduce(
29
- (p, c) => p + (c ? '1' : '0'),
30
- ''
29
+ (p, c) => p + (c ? "1" : "0"),
30
+ ""
31
31
  )}_${id}_${index}`;
32
32
  }
33
33
  );
@@ -42,7 +42,7 @@ export function selectOptionConditionValue(
42
42
  index: number
43
43
  ): Readonly<boolean | undefined>;
44
44
  export function selectOptionConditionValue(id: number, index?: number) {
45
- if (typeof index === 'number') return optionConditionValueSelector(id, index);
45
+ if (typeof index === "number") return optionConditionValueSelector(id, index);
46
46
  return optionConditionValueSelector(id);
47
47
  }
48
48
 
@@ -53,17 +53,17 @@ export function selectOptionConditionValue(id: number, index?: number) {
53
53
  */
54
54
  const variableConditionValueSelector = createSelector(
55
55
  (state, id: number, index?: number) => {
56
- if (typeof state.conditions.variables[id] === 'undefined') return undefined;
57
- return typeof index === 'number'
56
+ if (typeof state.conditions.variables[id] === "undefined") return undefined;
57
+ return typeof index === "number"
58
58
  ? state.conditions.variables[id][index]
59
59
  : state.conditions.variables[id];
60
60
  },
61
61
  (state, id: number, index?: number) => {
62
- if (typeof state.conditions.variables[id] === 'undefined')
62
+ if (typeof state.conditions.variables[id] === "undefined")
63
63
  return Math.random();
64
64
  return `${state.conditions.variables[id].reduce(
65
- (p, c) => p + (c ? '1' : '0'),
66
- ''
65
+ (p, c) => p + (c ? "1" : "0"),
66
+ ""
67
67
  )}_${id}_${index}`;
68
68
  }
69
69
  );
@@ -76,7 +76,7 @@ export function selectVariableConditionValue(
76
76
  index: number
77
77
  ): boolean | undefined;
78
78
  export function selectVariableConditionValue(id: number, index?: number) {
79
- if (typeof index === 'number')
79
+ if (typeof index === "number")
80
80
  return variableConditionValueSelector(id, index);
81
81
  return variableConditionValueSelector(id);
82
82
  }
@@ -86,11 +86,11 @@ export function selectVariableConditionValue(id: number, index?: number) {
86
86
  * @param id Section's id
87
87
  */
88
88
  export const selectSectionConditionValue = createSelector(
89
- (state, id: number, document = 'main') => {
89
+ (state, id: number, document = "main") => {
90
90
  if (state.conditions.sections[document] === undefined) return undefined;
91
91
  return state.conditions.sections[document][id];
92
92
  },
93
- (state, id: number, document = 'main') => {
93
+ (state, id: number, document = "main") => {
94
94
  const key = state.conditions.sections[document][id] ? `1_${id}` : `0_${id}`;
95
95
  return document + key;
96
96
  }
@@ -102,14 +102,14 @@ export const selectSectionConditionValue = createSelector(
102
102
  */
103
103
  export const selectDocumentConditionValue = createSelector(
104
104
  (state, name: string) => {
105
- if (typeof state.conditions.documents[name] === 'undefined')
105
+ if (typeof state.conditions.documents[name] === "undefined")
106
106
  return undefined;
107
107
  return state.conditions.documents[name];
108
108
  },
109
109
  (state, name: string) => {
110
- if (typeof state.conditions.documents[name] === 'undefined')
110
+ if (typeof state.conditions.documents[name] === "undefined")
111
111
  return Math.random().toString();
112
- return state.conditions.documents[name] ? 'true' : 'false';
112
+ return state.conditions.documents[name] ? "true" : "false";
113
113
  }
114
114
  );
115
115
 
@@ -122,15 +122,15 @@ const prefillerConditionValueSelector = createSelector(
122
122
  (state, id: number, index?: number) => {
123
123
  if (state.conditions.prefillers === undefined) return undefined;
124
124
  if (state.conditions.prefillers[id] === undefined) return undefined;
125
- return typeof index === 'number'
125
+ return typeof index === "number"
126
126
  ? state.conditions.prefillers[id][index]
127
127
  : state.conditions.prefillers[id];
128
128
  },
129
129
  (state, id: number, index?: number) => {
130
130
  const prefillers = state.conditions.prefillers[id].map((v) =>
131
- v.reduce((p, c) => p + (c ? '1' : '0'), '')
131
+ v.reduce((p, c) => p + (c ? "1" : "0"), "")
132
132
  );
133
- return `${prefillers.reduce((p, c) => p + c, '')}_${id}_${index}`;
133
+ return `${prefillers.reduce((p, c) => p + c, "")}_${id}_${index}`;
134
134
  }
135
135
  );
136
136
 
@@ -144,7 +144,7 @@ export function selectPrefillerConditionValue(
144
144
  index: number
145
145
  ): boolean[] | undefined;
146
146
  export function selectPrefillerConditionValue(id: number, index?: number) {
147
- if (typeof index === 'number')
147
+ if (typeof index === "number")
148
148
  return prefillerConditionValueSelector(id, index);
149
149
  return prefillerConditionValueSelector(id);
150
150
  }
@@ -156,24 +156,24 @@ export function selectPrefillerConditionValue(id: number, index?: number) {
156
156
  */
157
157
  const optionValidatorConditionValueSelector = createSelector(
158
158
  (state, id: number, index?: number) => {
159
- if (typeof state.conditions.validators.options[id] === 'undefined')
159
+ if (typeof state.conditions.validators.options[id] === "undefined")
160
160
  return undefined;
161
161
  if (
162
- typeof index === 'number' &&
163
- typeof state.conditions.validators.options[id][index] === 'undefined'
162
+ typeof index === "number" &&
163
+ typeof state.conditions.validators.options[id][index] === "undefined"
164
164
  )
165
165
  return undefined;
166
- return typeof index === 'number'
166
+ return typeof index === "number"
167
167
  ? state.conditions.validators.options[id][index]
168
168
  : state.conditions.validators.options[id];
169
169
  },
170
170
  (state, id: number, index?: number) => {
171
- if (typeof state.conditions.validators.options[id] === 'undefined')
171
+ if (typeof state.conditions.validators.options[id] === "undefined")
172
172
  return Math.random();
173
173
  return `${state.conditions.validators.options[id].reduce(
174
- (p, c) => p + (c ? '1' : '0'),
175
- ''
176
- )}-${id.toString()}${index ? index.toString() : ''}`;
174
+ (p, c) => p + (c ? "1" : "0"),
175
+ ""
176
+ )}-${id.toString()}${index ? index.toString() : ""}`;
177
177
  }
178
178
  );
179
179
 
@@ -190,7 +190,7 @@ export function selectOptionValidatorConditionValue(
190
190
  id: number,
191
191
  index?: number
192
192
  ) {
193
- if (typeof index === 'number')
193
+ if (typeof index === "number")
194
194
  return optionValidatorConditionValueSelector(id, index);
195
195
  return optionValidatorConditionValueSelector(id);
196
196
  }
@@ -202,19 +202,19 @@ export function selectOptionValidatorConditionValue(
202
202
  */
203
203
  const variableValidatorConditionValueSelector = createSelector(
204
204
  (state, id: number, index?: number) => {
205
- if (typeof state.conditions.validators.variables[id] === 'undefined')
205
+ if (typeof state.conditions.validators.variables[id] === "undefined")
206
206
  return undefined;
207
- return typeof index === 'number'
207
+ return typeof index === "number"
208
208
  ? state.conditions.validators.variables[id][index]
209
209
  : state.conditions.validators.variables[id];
210
210
  },
211
211
  (state, id: number, index?: number) => {
212
- if (typeof state.conditions.validators.variables[id] === 'undefined')
212
+ if (typeof state.conditions.validators.variables[id] === "undefined")
213
213
  return Math.random();
214
214
  return `${state.conditions.validators.variables[id].reduce(
215
- (p, c) => p + (c ? '1' : '0'),
216
- ''
217
- )}-${id.toString()}${index ? index.toString() : ''}`;
215
+ (p, c) => p + (c ? "1" : "0"),
216
+ ""
217
+ )}-${id.toString()}${index ? index.toString() : ""}`;
218
218
  }
219
219
  );
220
220
 
@@ -231,7 +231,7 @@ export function selectVariableValidatorConditionValue(
231
231
  id: number,
232
232
  index?: number
233
233
  ) {
234
- if (typeof index === 'number')
234
+ if (typeof index === "number")
235
235
  return variableValidatorConditionValueSelector(id, index);
236
236
  return variableValidatorConditionValueSelector(id);
237
237
  }
@@ -1,5 +1,5 @@
1
- import { StateType } from '../../types/State.type';
2
- import { createSelector } from './selectors';
1
+ import { StateType } from "../../types/State.type";
2
+ import { createSelector } from "./selectors";
3
3
 
4
4
  /**
5
5
  * Returns all inputs
@@ -18,8 +18,8 @@ export const selectOptionInput = createSelector(
18
18
  (state: StateType, id: number) => state.inputs.options[id],
19
19
  (state: StateType, id: number) =>
20
20
  `${state.inputs.options[id].reduce(
21
- (p, c) => p + (c ? '1' : '0'),
22
- ''
21
+ (p, c) => p + (c ? "1" : "0"),
22
+ ""
23
23
  )}_${id.toString()}`
24
24
  );
25
25
 
@@ -36,8 +36,8 @@ export const selectOptionInputByIndex = createSelector(
36
36
  (state: StateType, id: number, index?: number) =>
37
37
  state.inputs.options[id] !== undefined
38
38
  ? `${state.inputs.options[id].reduce(
39
- (p, c) => p + (c ? '1' : '0'),
40
- ''
39
+ (p, c) => p + (c ? "1" : "0"),
40
+ ""
41
41
  )}_${id.toString()}_${index}`
42
42
  : Math.random()
43
43
  );
@@ -48,14 +48,14 @@ export const selectOptionInputByIndex = createSelector(
48
48
  */
49
49
  export const selectVariableInput = createSelector(
50
50
  (state: StateType, id: number) => {
51
- if (typeof state.inputs.variables[id] === 'undefined') return [''];
51
+ if (typeof state.inputs.variables[id] === "undefined") return [""];
52
52
  return state.inputs.variables[id];
53
53
  },
54
54
  (state: StateType, id: number) => {
55
- if (typeof state.inputs.variables[id] === 'undefined') return Math.random();
55
+ if (typeof state.inputs.variables[id] === "undefined") return Math.random();
56
56
  return `${state.inputs.variables[id].reduce(
57
57
  (p, c) => `${p}-${c}`,
58
- ''
58
+ ""
59
59
  )}_${id.toString()}`;
60
60
  }
61
61
  );
@@ -71,6 +71,6 @@ export const selectVariableInputByIndex = createSelector(
71
71
  (state: StateType, id: number, index: number) =>
72
72
  `${state.inputs.variables[id].reduce(
73
73
  (p, c) => `${p}-${c}`,
74
- ''
74
+ ""
75
75
  )}_${id.toString()}_${index}`
76
76
  );
@@ -0,0 +1,17 @@
1
+ import * as app from "./app";
2
+ import * as conditions from "./conditions";
3
+ import * as inputs from "./inputs";
4
+ import * as mandatories from "./mandatories";
5
+ import * as references from "./references";
6
+ import * as smartscript from "./smartscript";
7
+ import * as user from "./user";
8
+
9
+ export const selectorsLibrary = {
10
+ ...app,
11
+ ...conditions,
12
+ ...inputs,
13
+ ...mandatories,
14
+ ...references,
15
+ ...smartscript,
16
+ ...user,
17
+ };
@@ -1,11 +1,11 @@
1
- import { createSelector } from './selectors';
1
+ import { createSelector } from "./selectors";
2
2
 
3
3
  /**
4
4
  * Returns mandatory ignore
5
5
  */
6
6
  export const selectMandatoryIgnore = createSelector(
7
7
  (state) => state.mandatories.ignore,
8
- (state) => (state.mandatories.ignore ? '1' : '0')
8
+ (state) => (state.mandatories.ignore ? "1" : "0")
9
9
  );
10
10
 
11
11
  /**
@@ -13,7 +13,7 @@ export const selectMandatoryIgnore = createSelector(
13
13
  */
14
14
  export const selectMandatorySection = createSelector(
15
15
  (state, id: number) => state.mandatories.sections[id] === true,
16
- (state, id: number) => `${id}:${state.mandatories.sections[id] ? '1' : '0'}`
16
+ (state, id: number) => `${id}:${state.mandatories.sections[id] ? "1" : "0"}`
17
17
  );
18
18
 
19
19
  /**
@@ -42,7 +42,7 @@ export const selectFirstUnfinishedSectionId = createSelector(
42
42
  */
43
43
  export const selectMandatoryOptionItem = createSelector(
44
44
  (state, id: number) => state.mandatories.options[id],
45
- (state, id: number) => (state.mandatories.options[id] ? '1' : '0')
45
+ (state, id: number) => (state.mandatories.options[id] ? "1" : "0")
46
46
  );
47
47
  /**
48
48
  * Returns mandatory option
@@ -51,15 +51,15 @@ export const selectMandatoryOption = createSelector(
51
51
  (state, id: number) => state.mandatories.options[id].map((c) => c && true),
52
52
  (state, id: number) =>
53
53
  `${id}:${state.mandatories.options[id]
54
- .map((c) => (c ? '1' : '0'))
55
- .join('-')}`
54
+ .map((c) => (c ? "1" : "0"))
55
+ .join("-")}`
56
56
  );
57
57
  export const selectMandatoryOptionByIndex = createSelector(
58
58
  (state, id: number, index: number) =>
59
59
  state.mandatories.options[id]?.[index] === true,
60
60
  (state, id: number, index: number) =>
61
61
  `${id}-${index}:${
62
- state.mandatories.options[id]?.[index] === true ? '1' : '0'
62
+ state.mandatories.options[id]?.[index] === true ? "1" : "0"
63
63
  }`
64
64
  );
65
65
 
@@ -70,14 +70,14 @@ export const selectMandatoryVariable = createSelector(
70
70
  (state, id: number) => state.mandatories.variables[id].map((c) => c && true),
71
71
  (state, id: number) =>
72
72
  `${id}:${state.mandatories.variables[id]
73
- .map((c) => (c ? '1' : '0'))
74
- .join('-')}`
73
+ .map((c) => (c ? "1" : "0"))
74
+ .join("-")}`
75
75
  );
76
76
  export const selectMandatoryVariableByIndex = createSelector(
77
77
  (state, id: number, index: number) =>
78
78
  state.mandatories.variables[id]?.[index] === true,
79
79
  (state, id: number, index: number) =>
80
80
  `${id}-${index}:${
81
- state.mandatories.variables[id]?.[index] === true ? '1' : '0'
81
+ state.mandatories.variables[id]?.[index] === true ? "1" : "0"
82
82
  }`
83
83
  );
@@ -1,5 +1,5 @@
1
- import { StateType } from '../../types/State.type';
2
- import { createSelector } from './selectors';
1
+ import { StateType } from "../../types/State.type";
2
+ import { createSelector } from "./selectors";
3
3
 
4
4
  /**
5
5
  * Warning:
@@ -8,6 +8,10 @@ import { createSelector } from './selectors';
8
8
  * memoization for them
9
9
  */
10
10
 
11
+ export const selectReferences = createSelector(
12
+ (state: StateType) => state.references
13
+ );
14
+
11
15
  /**
12
16
  * Returns output's reference
13
17
  * @param id Option's id
@@ -15,7 +19,7 @@ import { createSelector } from './selectors';
15
19
  // eslint-disable-next-line max-len
16
20
  export const selectOutputReference = createSelector(
17
21
  (state: StateType, id: number) => {
18
- if (typeof state.references === 'undefined') return undefined;
22
+ if (typeof state.references === "undefined") return undefined;
19
23
  return state.references.outputs[id];
20
24
  },
21
25
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -47,7 +51,7 @@ export const selectBoxReference = createSelector(
47
51
  */
48
52
  export const isOptionMultiple = createSelector(
49
53
  (state: StateType, id: number) => {
50
- if (typeof state.references === 'undefined') return undefined;
54
+ if (typeof state.references === "undefined") return undefined;
51
55
  return state.references.options[id].meta.multiple?.enabled === true;
52
56
  },
53
57
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -186,11 +190,11 @@ export const selectDocumentReference = createSelector(
186
190
  * |---------------------------------|
187
191
  */
188
192
  export const selectAllSectionsReferences = createSelector(
189
- (state: StateType, document = 'main') => {
190
- if (typeof state.references === 'undefined') return undefined;
193
+ (state: StateType, document = "main") => {
194
+ if (typeof state.references === "undefined") return undefined;
191
195
  return state.references.sections[document];
192
196
  },
193
- (state: StateType, document = 'main') =>
197
+ (state: StateType, document = "main") =>
194
198
  !state.references ? Math.random() : document
195
199
  );
196
200
 
@@ -200,7 +204,7 @@ export const selectAllSectionsReferences = createSelector(
200
204
  */
201
205
  // eslint-disable-next-line max-len
202
206
  export const selectSectionReference = createSelector(
203
- (state: StateType, id: number, document = 'main') => {
207
+ (state: StateType, id: number, document = "main") => {
204
208
  if (state.references.sections[document] === undefined)
205
209
  throw new Error(`Document ${document} does not exist`);
206
210
  if (state.references.sections[document][id] === undefined) {
@@ -208,7 +212,7 @@ export const selectSectionReference = createSelector(
208
212
  }
209
213
  return state.references.sections[document][id];
210
214
  },
211
- (state: StateType, id: number, document = 'main') =>
215
+ (state: StateType, id: number, document = "main") =>
212
216
  !state.references ? Math.random() : `${id}-${document}`
213
217
  );
214
218
 
@@ -217,7 +221,7 @@ export const selectSectionReference = createSelector(
217
221
  */
218
222
  export const selectSectionDefaults = createSelector(
219
223
  (state: StateType, id: number) => {
220
- if (typeof state.references === 'undefined') return undefined;
224
+ if (typeof state.references === "undefined") return undefined;
221
225
  return state.references.defaults[id];
222
226
  },
223
227
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -230,7 +234,7 @@ export const selectSectionDefaults = createSelector(
230
234
  */
231
235
  export const selectOptionConditionsObject = createSelector(
232
236
  (state: StateType, id: number) => {
233
- if (typeof state.references === 'undefined') return undefined;
237
+ if (typeof state.references === "undefined") return undefined;
234
238
  return state.references.conditions.options[id];
235
239
  },
236
240
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -238,7 +242,7 @@ export const selectOptionConditionsObject = createSelector(
238
242
 
239
243
  export const selectVariableConditionsObject = createSelector(
240
244
  (state: StateType, id: number) => {
241
- if (typeof state.references === 'undefined') return undefined;
245
+ if (typeof state.references === "undefined") return undefined;
242
246
  return state.references.conditions.variables[id];
243
247
  },
244
248
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -246,22 +250,22 @@ export const selectVariableConditionsObject = createSelector(
246
250
 
247
251
  export const selectDocumentConditionsObject = createSelector(
248
252
  (state: StateType, name: string) => {
249
- if (typeof state.references === 'undefined') return undefined;
253
+ if (typeof state.references === "undefined") return undefined;
250
254
  return state.references.conditions.documents[name];
251
255
  },
252
256
  (state: StateType, name: string) => (!state.references ? Math.random() : name)
253
257
  );
254
258
 
255
259
  export const selectSectionConditionsObject = createSelector(
256
- (state: StateType, id: number, document = 'main') =>
260
+ (state: StateType, id: number, document = "main") =>
257
261
  state.references.conditions.sections[document][id],
258
- (state: StateType, id: number, document = 'main') =>
262
+ (state: StateType, id: number, document = "main") =>
259
263
  !state.references ? Math.random() : `${id}-${document}`
260
264
  );
261
265
 
262
266
  export const selectPrefillerConditionsObject = createSelector(
263
267
  (state: StateType, id: number) => {
264
- if (typeof state.references === 'undefined') return undefined;
268
+ if (typeof state.references === "undefined") return undefined;
265
269
  return state.references.conditions.prefillers[id];
266
270
  },
267
271
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -269,7 +273,7 @@ export const selectPrefillerConditionsObject = createSelector(
269
273
 
270
274
  export const selectOptionValidatorConditionsObject = createSelector(
271
275
  (state: StateType, id: number) => {
272
- if (typeof state.references === 'undefined') return undefined;
276
+ if (typeof state.references === "undefined") return undefined;
273
277
  return state.references.conditions.validators.options[id];
274
278
  },
275
279
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -277,7 +281,7 @@ export const selectOptionValidatorConditionsObject = createSelector(
277
281
 
278
282
  export const selectVariableValidatorConditionsObject = createSelector(
279
283
  (state: StateType, id: number) => {
280
- if (typeof state.references === 'undefined') return undefined;
284
+ if (typeof state.references === "undefined") return undefined;
281
285
  return state.references.conditions.validators.variables[id];
282
286
  },
283
287
  (state: StateType, id: number) => (!state.references ? Math.random() : id)
@@ -290,7 +294,7 @@ export const selectVariableValidatorConditionsObject = createSelector(
290
294
  */
291
295
  export const areVariablesSiblings = createSelector(
292
296
  (state: StateType, ...args: number[]) => {
293
- if (typeof state.references === 'undefined') return undefined;
297
+ if (typeof state.references === "undefined") return undefined;
294
298
 
295
299
  // Getting variables first parent
296
300
  const rootParents = args
@@ -306,7 +310,7 @@ export const areVariablesSiblings = createSelector(
306
310
  return rootParents.every((c) => c === comparator);
307
311
  },
308
312
  (state: StateType, ...args: number[]) =>
309
- args.reduce((p, c) => p + c.toString(), '')
313
+ args.reduce((p, c) => p + c.toString(), "")
310
314
  );
311
315
 
312
316
  /**
@@ -396,7 +400,7 @@ export const selectUserEmailSectionVariableIds = createSelector(
396
400
 
397
401
  // Extract all user_email variables
398
402
  const userEmailVariables = Object.keys(variables).filter(
399
- (variableId) => variables[variableId].type === 'user_email'
403
+ (variableId) => variables[variableId].type === "user_email"
400
404
  );
401
405
 
402
406
  return userEmailVariables.filter(
@@ -1,5 +1,5 @@
1
- import { Action, MiddlewareAPI, Dispatch } from 'redux';
2
- import { StateType } from '../../types/State.type';
1
+ import { Action, MiddlewareAPI, Dispatch } from "redux";
2
+ import { StateType } from "../../types/State.type";
3
3
 
4
4
  let SelectorsStateTrack = -1;
5
5
  let globalMPI: MiddlewareAPI;
@@ -53,13 +53,13 @@ export function createSelector<
53
53
  state = globalMPI.getState();
54
54
  } catch (e) {
55
55
  throw new Error(
56
- 'You may not use selectors while the reducer is executing. (Try sagas or middlewares)'
56
+ "You may not use selectors while the reducer is executing. (Try sagas or middlewares)"
57
57
  );
58
58
  }
59
59
 
60
60
  // Calculating current cache key
61
61
  const currentKey: string | number =
62
- typeof equalityFn === 'function'
62
+ typeof equalityFn === "function"
63
63
  ? equalityFn(state, ...args)
64
64
  : [SelectorsStateTrack, ...args].reduce((v, c) => v + c);
65
65
 
@@ -1,5 +1,5 @@
1
- import { createSelector } from './selectors';
2
- import { StateType } from '../../types/State.type';
1
+ import { createSelector } from "./selectors";
2
+ import { StateType } from "../../types/State.type";
3
3
 
4
4
  /**
5
5
  * Returns if option's index is hidden by Smartscript or not
@@ -11,8 +11,8 @@ export const selectIsSmartscriptOptionIndexHidden = createSelector(
11
11
  (state, id, index) =>
12
12
  Array.isArray(state.smartscript.hidden.options[id]) &&
13
13
  state.smartscript.hidden.options[id].includes(index)
14
- ? '1'
15
- : '0'
14
+ ? "1"
15
+ : "0"
16
16
  );
17
17
 
18
18
  /**
@@ -25,6 +25,6 @@ export const selectIsSmartscriptVariableIndexHidden = createSelector(
25
25
  (state, id, index) =>
26
26
  Array.isArray(state.smartscript.hidden.variables[id]) &&
27
27
  state.smartscript.hidden.variables[id].includes(index)
28
- ? '1'
29
- : '0'
28
+ ? "1"
29
+ : "0"
30
30
  );
@@ -1,5 +1,5 @@
1
- import { StateType } from '../../types/State.type';
2
- import { createSelector } from './selectors';
1
+ import { StateType } from "../../types/State.type";
2
+ import { createSelector } from "./selectors";
3
3
 
4
4
  /**
5
5
  * Returns current user level
@@ -10,7 +10,7 @@ export const selectCurrentUserLevel = createSelector(
10
10
  );
11
11
 
12
12
  export const selectUserStatus = createSelector(
13
- (state: StateType) => (state.user ? state.user.status : 'unauthenticated'),
13
+ (state: StateType) => (state.user ? state.user.status : "unauthenticated"),
14
14
  (state: StateType) => (state.user ? state.user.status : Math.random())
15
15
  );
16
16
 
@@ -24,7 +24,7 @@ export const selectUserEmail = createSelector(
24
24
  (state: StateType) =>
25
25
  state.user && state.user.email && state.user.email.length > 0
26
26
  ? state.user.email
27
- : '',
27
+ : "",
28
28
  (state: StateType) =>
29
29
  state.user && state.user.email && state.user.email.length > 0
30
30
  ? state.user.email
@@ -34,12 +34,12 @@ export const selectUserEmail = createSelector(
34
34
  export const isLevelAccessibleForUser = createSelector(
35
35
  (
36
36
  state: StateType,
37
- level: 'ADMIN' | 'MANAGER' | 'USER' | 'GUEST' | 'SUPER'
37
+ level: "ADMIN" | "MANAGER" | "USER" | "GUEST" | "SUPER"
38
38
  ) => {
39
- const currentUserLevel = state.user ? state.user.level : 'GUEST';
40
- const levelEnum = ['GUEST', 'USER', 'MANAGER', 'ADMIN', 'SUPER'];
39
+ const currentUserLevel = state.user ? state.user.level : "GUEST";
40
+ const levelEnum = ["GUEST", "USER", "MANAGER", "ADMIN", "SUPER"];
41
41
  return levelEnum.indexOf(level) <= levelEnum.indexOf(currentUserLevel);
42
42
  },
43
- (state: StateType, level: 'ADMIN' | 'MANAGER' | 'USER' | 'GUEST' | 'SUPER') =>
43
+ (state: StateType, level: "ADMIN" | "MANAGER" | "USER" | "GUEST" | "SUPER") =>
44
44
  state.user ? `${state.user.level}-${level}` : Math.random()
45
45
  );