@legalplace/wizardx-core 2.6.3 → 2.7.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 (357) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/dist/App.js +13 -4
  3. package/dist/PluginLoader.d.ts +3 -1
  4. package/dist/PluginLoader.js +12 -0
  5. package/dist/ThemeLoader.d.ts +2 -2
  6. package/dist/componentsConnectors/connectBox.d.ts +3 -1
  7. package/dist/componentsConnectors/connectDocument.d.ts +3 -1
  8. package/dist/componentsConnectors/connectHeader.d.ts +3 -1
  9. package/dist/componentsConnectors/connectMetaTitle.d.ts +3 -1
  10. package/dist/componentsConnectors/connectOption.d.ts +6 -2
  11. package/dist/componentsConnectors/connectOption.js +1 -1
  12. package/dist/componentsConnectors/connectPagination.d.ts +3 -1
  13. package/dist/componentsConnectors/connectPreview.d.ts +3 -1
  14. package/dist/componentsConnectors/connectProgress.d.ts +3 -1
  15. package/dist/componentsConnectors/connectRootOption.d.ts +3 -1
  16. package/dist/componentsConnectors/connectSection.d.ts +3 -1
  17. package/dist/componentsConnectors/connectSection.js +7 -10
  18. package/dist/componentsConnectors/connectSummary.d.ts +3 -1
  19. package/dist/componentsConnectors/connectSummaryItem.d.ts +3 -1
  20. package/dist/componentsConnectors/connectVariable.d.ts +6 -2
  21. package/dist/componentsConnectors/connectVariable.js +1 -1
  22. package/dist/componentsConnectors/connectWizardWrapper.d.ts +3 -1
  23. package/dist/componentsConnectors/connector/componentConnector.d.ts +5 -1
  24. package/dist/componentsConnectors/connector/componentConnector.js +44 -4
  25. package/dist/componentsConnectors/connector/index.d.ts +1 -0
  26. package/dist/componentsConnectors/connector/index.js +1 -0
  27. package/dist/componentsConnectors/index.d.ts +17 -0
  28. package/dist/componentsConnectors/index.js +17 -0
  29. package/dist/componentsConnectors/library.d.ts +43 -15
  30. package/dist/constants/phoneValidation.d.ts +0 -1
  31. package/dist/constants/phoneValidation.js +0 -1
  32. package/dist/helpers/apiEndpoint.d.ts +1 -0
  33. package/dist/helpers/apiEndpoint.js +4 -0
  34. package/dist/helpers/index.d.ts +4 -0
  35. package/dist/helpers/index.js +4 -0
  36. package/dist/helpers/propsEqualityCheck.d.ts +1 -0
  37. package/dist/helpers/propsEqualityCheck.js +9 -0
  38. package/dist/hooks/index.d.ts +4 -0
  39. package/dist/hooks/index.js +4 -0
  40. package/dist/hooks/useActions.d.ts +2 -0
  41. package/dist/hooks/useActions.js +4 -0
  42. package/dist/hooks/useDispatch.d.ts +1 -0
  43. package/dist/hooks/useDispatch.js +4 -0
  44. package/dist/hooks/useSelectors.d.ts +2 -0
  45. package/dist/hooks/useSelectors.js +4 -0
  46. package/dist/index.d.ts +13 -0
  47. package/dist/index.js +13 -0
  48. package/dist/libs/EventsTracking.d.ts +0 -1
  49. package/dist/libs/EventsTracking.js +0 -18
  50. package/dist/libs/PathReader.d.ts +10 -6
  51. package/dist/libs/PathReader.js +47 -28
  52. package/dist/libs/index.d.ts +5 -0
  53. package/dist/libs/index.js +5 -0
  54. package/dist/redux/actions/index.d.ts +9 -0
  55. package/dist/redux/actions/index.js +9 -0
  56. package/dist/redux/actions/library.d.ts +59 -63
  57. package/dist/redux/actions/sagas/index.d.ts +3 -0
  58. package/dist/redux/actions/sagas/index.js +3 -0
  59. package/dist/redux/actions/sagas/model.d.ts +1 -5
  60. package/dist/redux/constants/app.d.ts +2 -0
  61. package/dist/redux/constants/app.js +2 -0
  62. package/dist/redux/constants/index.d.ts +8 -0
  63. package/dist/redux/constants/index.js +8 -0
  64. package/dist/redux/constants/sagas/index.d.ts +3 -0
  65. package/dist/redux/constants/sagas/index.js +3 -0
  66. package/dist/redux/index.d.ts +5 -0
  67. package/dist/redux/index.js +5 -0
  68. package/dist/redux/middlewares/conditionsWatcherMiddleware.js +11 -5
  69. package/dist/redux/middlewares/conditionsWatcherMiddleware.test.js +120 -113
  70. package/dist/redux/middlewares/paginationWatcherMiddleware.js +2 -2
  71. package/dist/redux/middlewares/smartscriptMiddleware.js +8 -0
  72. package/dist/redux/reducers/pluginsStore.d.ts +3 -0
  73. package/dist/redux/reducers/pluginsStore.js +12 -0
  74. package/dist/redux/routerHistory.js +2 -2
  75. package/dist/redux/sagas/fetchModel.js +22 -6
  76. package/dist/redux/sagas/initInputs.js +6 -7
  77. package/dist/redux/sagas/saveData.js +3 -46
  78. package/dist/redux/sagas/setUserEmail.js +1 -28
  79. package/dist/redux/selectors/app.js +13 -18
  80. package/dist/redux/selectors/cache.d.ts +17 -0
  81. package/dist/redux/selectors/cache.js +35 -0
  82. package/dist/redux/selectors/conditions.js +7 -7
  83. package/dist/redux/selectors/index.d.ts +8 -0
  84. package/dist/redux/selectors/index.js +8 -0
  85. package/dist/redux/selectors/inputs.js +3 -3
  86. package/dist/redux/selectors/library.d.ts +2 -2
  87. package/dist/redux/selectors/references.js +26 -26
  88. package/dist/redux/selectors/selectors.d.ts +2 -2
  89. package/dist/redux/selectors/selectors.js +19 -8
  90. package/dist/redux/selectors/selectors.test.js +6 -6
  91. package/dist/redux/selectors/user.js +5 -5
  92. package/dist/redux/store.d.ts +1 -1
  93. package/dist/redux/store.js +12 -4
  94. package/dist/service/api.manager.d.ts +1 -6
  95. package/dist/service/index.d.ts +3 -0
  96. package/dist/service/index.js +3 -0
  97. package/dist/types/PluginConfig.type.d.ts +57 -0
  98. package/dist/types/PluginConfig.type.js +1 -0
  99. package/dist/types/State.type.d.ts +6 -0
  100. package/dist/types/config.type.d.ts +3 -1
  101. package/dist/types/index.d.ts +11 -0
  102. package/dist/types/index.js +11 -0
  103. package/package.json +11 -12
  104. package/.depcheckrc +0 -1
  105. package/.eslintignore +0 -2
  106. package/.eslintrc +0 -5
  107. package/__mocks__/fileMock.js +0 -1
  108. package/babel.config.json +0 -3
  109. package/dist/helpers/sendinblueHelper.d.ts +0 -4
  110. package/dist/helpers/sendinblueHelper.js +0 -46
  111. package/dist/libs/Extracts.d.ts +0 -20
  112. package/dist/libs/Extracts.js +0 -110
  113. package/jest.config.ts +0 -193
  114. package/setupJest.ts +0 -8
  115. package/src/App.test.tsx +0 -41
  116. package/src/App.tsx +0 -152
  117. package/src/Globals.ts +0 -69
  118. package/src/Loader.tsx +0 -8
  119. package/src/PluginLoader.test.tsx +0 -70
  120. package/src/PluginLoader.tsx +0 -407
  121. package/src/Shimmer.tsx +0 -108
  122. package/src/ThemeLoader.test.tsx +0 -82
  123. package/src/ThemeLoader.tsx +0 -95
  124. package/src/components/PluginRoute.tsx +0 -48
  125. package/src/components/SmartScript.tsx +0 -166
  126. package/src/components/UserLocked/UserLockedComponent.tsx +0 -33
  127. package/src/components/View.test.tsx +0 -110
  128. package/src/components/View.tsx +0 -114
  129. package/src/componentsConnectors/connectBox.test.tsx +0 -226
  130. package/src/componentsConnectors/connectBox.tsx +0 -70
  131. package/src/componentsConnectors/connectDocument.test.tsx +0 -108
  132. package/src/componentsConnectors/connectDocument.tsx +0 -64
  133. package/src/componentsConnectors/connectHeader.tsx +0 -21
  134. package/src/componentsConnectors/connectMetaTitle.test.tsx +0 -40
  135. package/src/componentsConnectors/connectMetaTitle.tsx +0 -8
  136. package/src/componentsConnectors/connectOption.tsx +0 -222
  137. package/src/componentsConnectors/connectPagination.tsx +0 -102
  138. package/src/componentsConnectors/connectPreview.tsx +0 -5
  139. package/src/componentsConnectors/connectProgress.tsx +0 -59
  140. package/src/componentsConnectors/connectRootOption.tsx +0 -95
  141. package/src/componentsConnectors/connectSection.tsx +0 -79
  142. package/src/componentsConnectors/connectSummary.tsx +0 -21
  143. package/src/componentsConnectors/connectSummaryItem.tsx +0 -102
  144. package/src/componentsConnectors/connectTermsheet.tsx +0 -359
  145. package/src/componentsConnectors/connectVariable.tsx +0 -191
  146. package/src/componentsConnectors/connectWizardWrapper.tsx +0 -30
  147. package/src/componentsConnectors/connector/componentConnector.tsx +0 -219
  148. package/src/componentsConnectors/library.ts +0 -35
  149. package/src/config.test.ts +0 -63
  150. package/src/config.ts +0 -11
  151. package/src/constants/emailValidation.ts +0 -2
  152. package/src/constants/phoneValidation.ts +0 -6
  153. package/src/definitions/path.join.d.ts +0 -4
  154. package/src/helpers/outputsParsing.ts +0 -412
  155. package/src/helpers/preloadTheme.ts +0 -17
  156. package/src/helpers/scriptsLoader.ts +0 -20
  157. package/src/helpers/sendinblueHelper.ts +0 -65
  158. package/src/hooks/usePrevious.ts +0 -9
  159. package/src/libs/ConditionsInitiator.ts +0 -164
  160. package/src/libs/ConditionsRunner/DataPopulator.ts +0 -266
  161. package/src/libs/ConditionsRunner.ts +0 -454
  162. package/src/libs/DocumentsOutputs.ts +0 -171
  163. package/src/libs/Eval/EvalBase.ts +0 -116
  164. package/src/libs/Eval/EvalFunctions.ts +0 -724
  165. package/src/libs/Eval/NumbersToLetters.ts +0 -185
  166. package/src/libs/EvalVariable.ts +0 -265
  167. package/src/libs/EventsTracking.ts +0 -276
  168. package/src/libs/Extracts.ts +0 -159
  169. package/src/libs/InputsInitiator.ts +0 -136
  170. package/src/libs/NumAuto.test.ts +0 -55
  171. package/src/libs/NumAuto.ts +0 -56
  172. package/src/libs/OvcConverter.ts +0 -285
  173. package/src/libs/PathReader.ts +0 -272
  174. package/src/libs/SectionValidity.test.ts +0 -146
  175. package/src/libs/SectionValidity.ts +0 -110
  176. package/src/libs/SmartScriptStore.ts +0 -492
  177. package/src/misc/test_model.ts +0 -14603
  178. package/src/misc/test_models/connectDocumen.testmodel.json +0 -178
  179. package/src/misc/test_models/setDefaults.testmodel.json +0 -279
  180. package/src/misc/test_models/testmodel.json +0 -1
  181. package/src/polyfills/index.ts +0 -5
  182. package/src/polyfills/objectValues.ts +0 -4
  183. package/src/polyfills/prepend.ts +0 -31
  184. package/src/polyfills/stringRepeat.ts +0 -44
  185. package/src/redux/actions/app.test.ts +0 -123
  186. package/src/redux/actions/app.ts +0 -249
  187. package/src/redux/actions/conditions.test.ts +0 -84
  188. package/src/redux/actions/conditions.ts +0 -135
  189. package/src/redux/actions/inputs.test.ts +0 -85
  190. package/src/redux/actions/inputs.ts +0 -111
  191. package/src/redux/actions/library.ts +0 -23
  192. package/src/redux/actions/mandatories.ts +0 -98
  193. package/src/redux/actions/references.test.ts +0 -48
  194. package/src/redux/actions/references.ts +0 -37
  195. package/src/redux/actions/sagas/data.test.ts +0 -11
  196. package/src/redux/actions/sagas/data.ts +0 -18
  197. package/src/redux/actions/sagas/model.test.ts +0 -14
  198. package/src/redux/actions/sagas/model.ts +0 -48
  199. package/src/redux/actions/sagas/user.ts +0 -25
  200. package/src/redux/actions/smartscript.ts +0 -55
  201. package/src/redux/actions/user.test.ts +0 -18
  202. package/src/redux/actions/user.ts +0 -41
  203. package/src/redux/constants/app.ts +0 -36
  204. package/src/redux/constants/conditions.ts +0 -25
  205. package/src/redux/constants/inputs.ts +0 -15
  206. package/src/redux/constants/mandatories.ts +0 -11
  207. package/src/redux/constants/references.ts +0 -7
  208. package/src/redux/constants/sagas/data.ts +0 -1
  209. package/src/redux/constants/sagas/model.ts +0 -2
  210. package/src/redux/constants/sagas/user.ts +0 -2
  211. package/src/redux/constants/smartscript.ts +0 -9
  212. package/src/redux/constants/user.ts +0 -6
  213. package/src/redux/listeners/subscriber.test.ts +0 -45
  214. package/src/redux/listeners/subscriber.ts +0 -29
  215. package/src/redux/middlewares/conditionsWatcherMiddleware.test.ts +0 -370
  216. package/src/redux/middlewares/conditionsWatcherMiddleware.ts +0 -321
  217. package/src/redux/middlewares/evaluationsWatcherMiddleware.test.ts +0 -323
  218. package/src/redux/middlewares/evaluationsWatcherMiddleware.ts +0 -250
  219. package/src/redux/middlewares/mandatoriesWatcherMiddleware.ts +0 -473
  220. package/src/redux/middlewares/multiplesActionsMiddleware.test.ts +0 -230
  221. package/src/redux/middlewares/multiplesActionsMiddleware.ts +0 -121
  222. package/src/redux/middlewares/paginationWatcherMiddleware.ts +0 -251
  223. package/src/redux/middlewares/pluginsHookMiddleware.ts +0 -24
  224. package/src/redux/middlewares/prefillerWatcherMiddleware.test.ts +0 -118
  225. package/src/redux/middlewares/prefillerWatcherMiddleware.ts +0 -462
  226. package/src/redux/middlewares/smartscriptMiddleware.ts +0 -228
  227. package/src/redux/middlewares/thirdpartyScriptsMiddleware.ts +0 -41
  228. package/src/redux/reducers/app/customizations/initCustomizationAutoDefault.ts +0 -16
  229. package/src/redux/reducers/app/customizations/initCustomizationMeta.ts +0 -16
  230. package/src/redux/reducers/app/instance/initInstance.ts +0 -29
  231. package/src/redux/reducers/app/instance/setDataStatus.ts +0 -16
  232. package/src/redux/reducers/app/instance/updateInstance.ts +0 -30
  233. package/src/redux/reducers/app/instance/updateInstancePaid.ts +0 -20
  234. package/src/redux/reducers/app/instance.test.ts +0 -106
  235. package/src/redux/reducers/app/meta/fetchModelFailed.ts +0 -11
  236. package/src/redux/reducers/app/meta/fetchModelNonBlocking.ts +0 -11
  237. package/src/redux/reducers/app/meta/fetchModelSucceeded.ts +0 -11
  238. package/src/redux/reducers/app/meta/fetchModelUnhealthy.ts +0 -18
  239. package/src/redux/reducers/app/meta/fetchModelUserLocked.ts +0 -11
  240. package/src/redux/reducers/app/meta/initMeta.ts +0 -22
  241. package/src/redux/reducers/app/meta/setModelUuid.ts +0 -17
  242. package/src/redux/reducers/app/meta.test.ts +0 -90
  243. package/src/redux/reducers/app/pagination/goNextPage.ts +0 -69
  244. package/src/redux/reducers/app/pagination/goPage.ts +0 -81
  245. package/src/redux/reducers/app/pagination/goPreviousPage.ts +0 -60
  246. package/src/redux/reducers/app/pagination/initPagination.ts +0 -46
  247. package/src/redux/reducers/app/pagination/updateAvailableAppStates.ts +0 -77
  248. package/src/redux/reducers/app/pagination.test.ts +0 -363
  249. package/src/redux/reducers/app/wizard/updateAvailableSections.ts +0 -40
  250. package/src/redux/reducers/app/wizard.test.ts +0 -84
  251. package/src/redux/reducers/app.test.ts +0 -336
  252. package/src/redux/reducers/app.ts +0 -150
  253. package/src/redux/reducers/conditions/addMultipleOccurency.test.ts +0 -131
  254. package/src/redux/reducers/conditions/addMultipleOccurency.ts +0 -155
  255. package/src/redux/reducers/conditions/deleteMultipleOccurency.test.ts +0 -95
  256. package/src/redux/reducers/conditions/deleteMultipleOccurency.ts +0 -141
  257. package/src/redux/reducers/conditions/initConditions.ts +0 -18
  258. package/src/redux/reducers/conditions/updateDocumentConditions.test.ts +0 -47
  259. package/src/redux/reducers/conditions/updateDocumentConditions.ts +0 -21
  260. package/src/redux/reducers/conditions/updateOptionConditions.ts +0 -24
  261. package/src/redux/reducers/conditions/updateOptionValidatorCondition.test.ts +0 -50
  262. package/src/redux/reducers/conditions/updateOptionValidatorCondition.ts +0 -28
  263. package/src/redux/reducers/conditions/updatePrefillerConditions.ts +0 -29
  264. package/src/redux/reducers/conditions/updateSectionConditions.ts +0 -28
  265. package/src/redux/reducers/conditions/updateVariableConditions.ts +0 -25
  266. package/src/redux/reducers/conditions/updateVariableValidatorCondition.test.ts +0 -50
  267. package/src/redux/reducers/conditions/updateVariableValidatorCondition.ts +0 -28
  268. package/src/redux/reducers/conditions.test.ts +0 -241
  269. package/src/redux/reducers/conditions.ts +0 -68
  270. package/src/redux/reducers/inputs/addMultipleOccurency.test.ts +0 -117
  271. package/src/redux/reducers/inputs/addMultipleOccurency.ts +0 -50
  272. package/src/redux/reducers/inputs/deleteMultipleOccurency.test.ts +0 -70
  273. package/src/redux/reducers/inputs/deleteMultipleOccurency.ts +0 -50
  274. package/src/redux/reducers/inputs/initOption.ts +0 -16
  275. package/src/redux/reducers/inputs/initVariable.ts +0 -16
  276. package/src/redux/reducers/inputs/updateOptionInput.ts +0 -24
  277. package/src/redux/reducers/inputs/updateVariableInput.ts +0 -24
  278. package/src/redux/reducers/inputs.test.ts +0 -221
  279. package/src/redux/reducers/inputs.ts +0 -51
  280. package/src/redux/reducers/mandatories/addMultipleOccurency.ts +0 -52
  281. package/src/redux/reducers/mandatories/deleteMultipleOccurency.ts +0 -55
  282. package/src/redux/reducers/mandatories/initMandatoryOption.ts +0 -17
  283. package/src/redux/reducers/mandatories/initMandatoryVariable.ts +0 -17
  284. package/src/redux/reducers/mandatories/setMandatoryIgnore.ts +0 -17
  285. package/src/redux/reducers/mandatories/setMandatoryOption.ts +0 -25
  286. package/src/redux/reducers/mandatories/setMandatorySection.ts +0 -20
  287. package/src/redux/reducers/mandatories/setMandatoryVariable.ts +0 -24
  288. package/src/redux/reducers/mandatories.ts +0 -56
  289. package/src/redux/reducers/references/initReferences.ts +0 -37
  290. package/src/redux/reducers/references/updateOptionMeta.ts +0 -73
  291. package/src/redux/reducers/references/updateVariableMeta.ts +0 -72
  292. package/src/redux/reducers/references.ts +0 -59
  293. package/src/redux/reducers/smartscript/enableSmartScript.ts +0 -13
  294. package/src/redux/reducers/smartscript/initSmartScriptTriggers.ts +0 -14
  295. package/src/redux/reducers/smartscript/updateSmartscriptOptionHidden.ts +0 -30
  296. package/src/redux/reducers/smartscript/updateSmartscriptVariableHidden.ts +0 -30
  297. package/src/redux/reducers/smartscript.ts +0 -47
  298. package/src/redux/reducers/user/initUser.ts +0 -15
  299. package/src/redux/reducers/user/setUserStatus.ts +0 -13
  300. package/src/redux/reducers/user/setUserValidToken.ts +0 -13
  301. package/src/redux/reducers/user.test.ts +0 -51
  302. package/src/redux/reducers/user.ts +0 -40
  303. package/src/redux/routerHistore.test.ts +0 -19
  304. package/src/redux/routerHistory.ts +0 -26
  305. package/src/redux/sagas/fetchModel.test.ts +0 -76
  306. package/src/redux/sagas/fetchModel.ts +0 -683
  307. package/src/redux/sagas/homogeneousRadioInputsSaga.ts +0 -42
  308. package/src/redux/sagas/initInputs.ts +0 -110
  309. package/src/redux/sagas/runner.test.ts +0 -12
  310. package/src/redux/sagas/runner.ts +0 -26
  311. package/src/redux/sagas/saveData.test.ts +0 -125
  312. package/src/redux/sagas/saveData.ts +0 -116
  313. package/src/redux/sagas/setDefaults.test.ts +0 -100
  314. package/src/redux/sagas/setDefaults.ts +0 -167
  315. package/src/redux/sagas/setUserEmail.ts +0 -221
  316. package/src/redux/selectors/app.test.ts +0 -162
  317. package/src/redux/selectors/app.ts +0 -331
  318. package/src/redux/selectors/conditions.test.ts +0 -92
  319. package/src/redux/selectors/conditions.ts +0 -293
  320. package/src/redux/selectors/inputs.test.ts +0 -72
  321. package/src/redux/selectors/inputs.ts +0 -76
  322. package/src/redux/selectors/library.ts +0 -17
  323. package/src/redux/selectors/mandatories.ts +0 -83
  324. package/src/redux/selectors/references.test.ts +0 -660
  325. package/src/redux/selectors/references.ts +0 -413
  326. package/src/redux/selectors/selectors.test.ts +0 -21
  327. package/src/redux/selectors/selectors.ts +0 -87
  328. package/src/redux/selectors/smartscript.ts +0 -30
  329. package/src/redux/selectors/user.test.ts +0 -39
  330. package/src/redux/selectors/user.ts +0 -45
  331. package/src/redux/store.test.ts +0 -22
  332. package/src/redux/store.ts +0 -100
  333. package/src/service/api.manager.ts +0 -261
  334. package/src/service/auth.service.ts +0 -5
  335. package/src/service/pardot.service.ts +0 -10
  336. package/src/tests-misc/plugins/jestTestPlugin/after.tsx +0 -5
  337. package/src/tests-misc/plugins/jestTestPlugin/before.tsx +0 -11
  338. package/src/tests-misc/plugins/jestTestPlugin/index.ts +0 -11
  339. package/src/tests-misc/plugins/jestTestPlugin/title.tsx +0 -8
  340. package/src/tests-misc/themes/jestTestTheme/components/EmailComponent.tsx +0 -5
  341. package/src/tests-misc/themes/jestTestTheme/components/TermsheetComponent.tsx +0 -5
  342. package/src/tests-misc/themes/jestTestTheme/components/WizardComponent.tsx +0 -5
  343. package/src/tests-misc/themes/jestTestTheme/faltyIndex.ts +0 -3
  344. package/src/tests-misc/themes/jestTestTheme/faltyIndexLoader.ts +0 -1
  345. package/src/tests-misc/themes/jestTestTheme/index.ts +0 -13
  346. package/src/types/Actions.type.ts +0 -612
  347. package/src/types/Components.type.ts +0 -181
  348. package/src/types/State.type.ts +0 -323
  349. package/src/types/Termsheet.type.ts +0 -28
  350. package/src/types/api.type.ts +0 -37
  351. package/src/types/config.type.ts +0 -55
  352. package/src/types/env.type.ts +0 -5
  353. package/src/types/getActions.type.ts +0 -3
  354. package/src/types/getConnectors.type.ts +0 -5
  355. package/src/types/getSelectors.type.ts +0 -3
  356. package/src/wizard-params.ts +0 -56
  357. package/tsconfig.json +0 -43
@@ -1,114 +0,0 @@
1
- import React, { CSSProperties } from "react";
2
- import { connect, MapDispatchToPropsFunction } from "react-redux";
3
- // import loadable from '@loadable/component';
4
- import Shimmer from "../Shimmer";
5
- import { addOnThemeLoadCallback, loadThemeComponent } from "../ThemeLoader";
6
- import { selectCurrentAppState } from "../redux/selectors/app";
7
- import Globals from "../Globals";
8
- import { goPageAction } from "../redux/actions/app";
9
- import { loadPluginComponent, pluginsLoaded } from "../PluginLoader";
10
-
11
- // const Mousetrap = loadable.lib(() => import('mousetrap'));
12
-
13
- export type OwnProps = { currentAppState: string; goPage: (p: number) => void };
14
- export type OwnState = { themeLoaded: boolean };
15
-
16
- /**
17
- * ViewComponent
18
- * -------------
19
- * This wrapper loads & renders the current app state's
20
- * related component from the theme
21
- * @param props {currentAppState} mapper from redux state
22
- */
23
- class ViewComponent extends React.Component<OwnProps, OwnState> {
24
- constructor(props: OwnProps) {
25
- super(props);
26
-
27
- this.state = {
28
- themeLoaded: false,
29
- };
30
- }
31
-
32
- componentDidMount() {
33
- addOnThemeLoadCallback(() => {
34
- if (!this.state.themeLoaded) this.setState({ themeLoaded: true });
35
- });
36
- }
37
-
38
- shouldComponentUpdate(newProps: OwnProps, newState: OwnState) {
39
- return (
40
- this.props.currentAppState !== newProps.currentAppState ||
41
- this.state.themeLoaded !== newState.themeLoaded
42
- );
43
- }
44
-
45
- render() {
46
- if (!this.state.themeLoaded) return null;
47
- let AppStateComponent;
48
- switch (this.props.currentAppState) {
49
- case "termsheet":
50
- AppStateComponent = loadThemeComponent("TermsheetComponent");
51
- break;
52
- case "email":
53
- AppStateComponent = loadThemeComponent("EmailComponent");
54
- break;
55
- case "wizard":
56
- AppStateComponent = loadThemeComponent("WizardComponent");
57
- break;
58
- default:
59
- if (pluginsLoaded())
60
- AppStateComponent =
61
- loadPluginComponent(this.props.currentAppState) ||
62
- loadThemeComponent("WizardComponent");
63
- else AppStateComponent = () => <></>;
64
- break;
65
- }
66
-
67
- const envStyle: CSSProperties = {
68
- top: "0",
69
- left: "50%",
70
- fontSize: "8pt",
71
- padding: "4px 8px",
72
- lineHeight: "16px",
73
- background: "#E0182D",
74
- color: "#FFF",
75
- textTransform: "uppercase",
76
- fontWeight: "bold",
77
- borderRadius: "0 0 4px 4px",
78
- zIndex: 99999999,
79
- position: "fixed",
80
- transform: "translateX(-50%)",
81
- opacity: 0.6,
82
- userSelect: "none",
83
- };
84
-
85
- return (
86
- <Shimmer>
87
- {Globals.appEnv !== "production" &&
88
- process.env.JEST_WORKER_ID === undefined && (
89
- <div style={envStyle}>
90
- {Globals.appEnv} ({Globals.version})
91
- </div>
92
- )}
93
- <React.Suspense fallback={null}>
94
- <AppStateComponent />
95
- </React.Suspense>
96
- </Shimmer>
97
- );
98
- }
99
- }
100
-
101
- const mapStateToProps = () => {
102
- const currentAppState = selectCurrentAppState();
103
- return {
104
- currentAppState,
105
- };
106
- };
107
-
108
- const mapDispatchToProps: MapDispatchToPropsFunction<any, any> = (
109
- dispatch
110
- ) => ({
111
- goPage: (page: number) => dispatch(goPageAction(page)),
112
- });
113
-
114
- export default connect(mapStateToProps, mapDispatchToProps)(ViewComponent);
@@ -1,226 +0,0 @@
1
- import React from 'react';
2
- import renderer from 'react-test-renderer';
3
- import { StateType } from '../types/State.type';
4
- import { initOptionAction, initVariableAction } from '../redux/actions/inputs';
5
- import { getStore, createAppStore } from '../redux/store';
6
- import { initReferencesAction } from '../redux/actions/references';
7
- import {
8
- initConditionsAction,
9
- updateOptionConditionsAction,
10
- } from '../redux/actions/conditions';
11
-
12
- const references: StateType.References = {
13
- options: {
14
- 1: {
15
- meta: {
16
- id: 1,
17
- label: 'textbox',
18
- type: 'box',
19
- step: '*',
20
- box: {
21
- content: 'This content should be parsed with [var:1] value',
22
- collapsable: true,
23
- aggregatable: false,
24
- type: 'error',
25
- title: 'My Test Box',
26
- },
27
- tags: ['ivann'],
28
- },
29
- options: [],
30
- variables: [],
31
- },
32
- 2: {
33
- meta: {
34
- id: 2,
35
- label: 'My test question',
36
- step: '*',
37
- type: 'static',
38
- },
39
- options: [],
40
- variables: [1],
41
- },
42
- },
43
- variables: {
44
- 1: {
45
- id: 1,
46
- label: 'My Test Variable',
47
- step: '*',
48
- type: 'text',
49
- },
50
- },
51
- relations: {
52
- options: {
53
- 1: {
54
- options: [],
55
- variables: [],
56
- validators: {
57
- options: [],
58
- variables: [],
59
- },
60
- sections: {},
61
- prefillers: [],
62
- documents: [],
63
- parents: [],
64
- children: {
65
- options: [],
66
- variables: [],
67
- },
68
- dependants: [],
69
- },
70
- 2: {
71
- options: [],
72
- variables: [],
73
- validators: {
74
- options: [],
75
- variables: [],
76
- },
77
- sections: {},
78
- prefillers: [],
79
- documents: [],
80
- parents: [],
81
- children: {
82
- options: [],
83
- variables: [2],
84
- },
85
- dependants: [],
86
- },
87
- },
88
- variables: {
89
- 1: {
90
- options: [],
91
- variables: [],
92
- validators: {
93
- options: [],
94
- variables: [],
95
- },
96
- sections: {},
97
- prefillers: [],
98
- prefillingsContents: [],
99
- documents: [],
100
- parents: [2],
101
- },
102
- },
103
- sections: {},
104
- },
105
- conditions: {
106
- options: {},
107
- variables: {},
108
- prefillers: {},
109
- validators: {
110
- options: {},
111
- variables: {},
112
- },
113
- sections: {},
114
- documents: {},
115
- },
116
- sections: {},
117
- documents: {},
118
- defaults: {},
119
- outputs: {},
120
- evaluations: {},
121
- boxes: {
122
- 1: {
123
- variables: [1],
124
- raw: 'This content should be parsed with [var:1] value',
125
- },
126
- },
127
- };
128
-
129
- const conditions: StateType.Conditions = {
130
- options: {
131
- 1: [true],
132
- },
133
- variables: {},
134
- prefillers: {},
135
- sections: {
136
- main: {},
137
- },
138
- documents: {},
139
- validators: {
140
- options: {},
141
- variables: {},
142
- },
143
- };
144
-
145
- describe('connectBox test suit', () => {
146
- let store: any;
147
- let connectBox: any;
148
- beforeEach(async () => {
149
- createAppStore('memory');
150
- store = getStore();
151
- store.dispatch(initReferencesAction(references));
152
- store.dispatch(initVariableAction(1, ['My Test Variable']));
153
- store.dispatch(initConditionsAction(conditions));
154
- store.dispatch(initOptionAction(1, [true]));
155
- // eslint-disable-next-line global-require
156
- connectBox = require('./connectBox').connectBox;
157
- });
158
-
159
- it('Should parse variables', () => {
160
- const ConnectedBox = connectBox((props: any) => {
161
- return <h1>{props.content}</h1>;
162
- });
163
- const component = renderer.create(
164
- // @ts-ignore
165
- <ConnectedBox store={store} id={1} index={0} />
166
- );
167
- // @ts-ignore
168
- expect(component.toTree().rendered.props.content).toEqual(
169
- 'This content should be parsed with My Test Variable value'
170
- );
171
- });
172
-
173
- it('Should not parse on false condition', () => {
174
- store.dispatch(updateOptionConditionsAction(1, 0, false));
175
- const ConnectedBox = connectBox((props: any) => {
176
- return <h1>{props.content}</h1>;
177
- });
178
- const component = renderer.create(
179
- // @ts-ignore
180
- <ConnectedBox store={store} id={1} index={0} />
181
- );
182
- // @ts-ignore
183
- expect(component.toTree().rendered.props.content).toEqual('');
184
- });
185
-
186
- it('Should retrun props properly', () => {
187
- store.dispatch(updateOptionConditionsAction(1, 0, true));
188
- const ConnectedBox = connectBox((props: any) => {
189
- return <h1>{props.content}</h1>;
190
- });
191
- const component = renderer.create(
192
- <ConnectedBox store={store} id={1} index={0} />
193
- );
194
-
195
- // @ts-ignore
196
- const { props } = component.toTree().rendered;
197
-
198
- const { id, index, type, content, condition, box, tags, options } = props;
199
-
200
- expect({
201
- id,
202
- index,
203
- type,
204
- content,
205
- condition,
206
- box,
207
- tags,
208
- options,
209
- }).toEqual({
210
- id: 1,
211
- index: 0,
212
- type: 'box',
213
- content: 'This content should be parsed with My Test Variable value',
214
- condition: true,
215
- box: {
216
- type: 'error',
217
- title: 'My Test Box',
218
- content: 'This content should be parsed with [var:1] value',
219
- aggregatable: false,
220
- collapsable: true,
221
- },
222
- tags: ['ivann'],
223
- options: [],
224
- });
225
- });
226
- });
@@ -1,70 +0,0 @@
1
- import type { OptionV3 } from "@legalplace/models-v3-types";
2
- import {
3
- componentConnector,
4
- ConnectorStateToProps,
5
- } from "./connector/componentConnector";
6
- import {
7
- getRelatedVariablesValues,
8
- parseContentWithVariables,
9
- } from "../helpers/outputsParsing";
10
-
11
- export type ConnectBoxOwnProps = {
12
- id: number;
13
- index: number;
14
- };
15
- export type ConnectBoxMapProps = {
16
- type: string;
17
- content: string;
18
- box: OptionV3["meta"]["box"];
19
- condition?: boolean;
20
- options: number[];
21
- tags?: string[];
22
- };
23
-
24
- const stateToProps: ConnectorStateToProps<
25
- ConnectBoxOwnProps,
26
- ConnectBoxMapProps
27
- > = (selectors) => (state, ownProps) => {
28
- // Destructring ownProps
29
- const { id, index } = ownProps;
30
-
31
- // Getting option reference
32
- const option = selectors.selectOptionReference(id);
33
-
34
- // Getting box reference
35
- const boxReference = selectors.selectBoxReference(id);
36
-
37
- // Getting outputs variables
38
- const variables = getRelatedVariablesValues(
39
- id,
40
- index,
41
- boxReference.variables
42
- );
43
-
44
- // Parsing content
45
- const condition = selectors.selectOptionConditionValue(id, index);
46
- const content =
47
- condition === false
48
- ? ""
49
- : parseContentWithVariables(boxReference.raw, id, index, variables);
50
-
51
- // Destructuring needed params
52
- const { options, meta } = option;
53
- const { tags, type, box } = meta;
54
-
55
- return {
56
- id,
57
- index,
58
- type,
59
- content,
60
- condition,
61
- box,
62
- tags,
63
- options,
64
- };
65
- };
66
-
67
- export const connectBox = componentConnector({
68
- componentName: "Box",
69
- stateToProps,
70
- });
@@ -1,108 +0,0 @@
1
- import * as fs from 'fs';
2
- import React from 'react';
3
- import renderer from 'react-test-renderer';
4
- import { ReferencesParser } from '@legalplace/referencesparser';
5
- import { getStore, createAppStore } from '../redux/store';
6
- import { initReferencesAction } from '../redux/actions/references';
7
- import { ConditionsInitiator } from '../libs/ConditionsInitiator';
8
- import { initConditionsAction } from '../redux/actions/conditions';
9
- import { IntputsInitiator } from '../libs/InputsInitiator';
10
- import { initOptionAction, initVariableAction } from '../redux/actions/inputs';
11
-
12
- const ovc = {
13
- options: { 1: [true], 2: [true, true], 3: [true, false], 4: [false, true] },
14
- variables: {
15
- 1: ['My VAR1'],
16
- 2: ['My VAR 2 1st', 'My VAR 2 2nd'],
17
- 3: ['My VAR 3 1st', 'My VAR 3 2nd'],
18
- },
19
- };
20
-
21
- describe('connectDocument test suit', () => {
22
- let store: any;
23
- let connectDocument: any;
24
- beforeEach(async () => {
25
- createAppStore('memory');
26
- const model = JSON.parse(
27
- fs.readFileSync(
28
- './src/misc/test_models/connectDocumen.testmodel.json',
29
- 'utf8'
30
- )
31
- );
32
- // eslint-disable-next-line global-require, @typescript-eslint/no-var-requires
33
- connectDocument = await require('./connectDocument').connectDocument;
34
- const references = new ReferencesParser(model).getReferences();
35
- const inputs = new IntputsInitiator(references, ovc).getInputs();
36
- const conditions = new ConditionsInitiator(
37
- references,
38
- inputs
39
- ).getConditions();
40
- store = getStore();
41
- store.dispatch(initReferencesAction(references));
42
- store.dispatch(initConditionsAction(conditions));
43
-
44
- /**
45
- * Initiating inputs
46
- */
47
-
48
- // Options
49
- const optionsIds = Object.keys(inputs.options);
50
- for (let i = 0; i < optionsIds.length; i += 1) {
51
- const optionId = optionsIds[i];
52
- const values = inputs.options[optionId];
53
- store.dispatch(initOptionAction(parseInt(optionId, 10), values));
54
- }
55
-
56
- // Variables
57
- const variablesIds = Object.keys(inputs.variables);
58
- for (let i = 0; i < variablesIds.length; i += 1) {
59
- const variableId = variablesIds[i];
60
- const values = inputs.variables[variableId];
61
- store.dispatch(initVariableAction(parseInt(variableId, 10), values));
62
- }
63
- });
64
-
65
- it('Should retrun props properly', async () => {
66
- const ConnectDocument = connectDocument((props: any) => {
67
- return <h1>{props.document}</h1>;
68
- });
69
- const component = renderer.create(
70
- <ConnectDocument store={store} document="main" />
71
- );
72
-
73
- // @ts-ignore
74
- const { props } = component.toTree().rendered;
75
-
76
- const { document, outputs } = props;
77
-
78
- expect({ document, outputs }).toStrictEqual({
79
- document: 'main',
80
- outputs: {
81
- 'output-5-0':
82
- '<p>Should output <strong>Variable 1</strong>&nbsp;My VAR1</p>\n',
83
- },
84
- });
85
- });
86
-
87
- it('Should use main as default', () => {
88
- const ConnectDocument = connectDocument((props: any) => {
89
- return <h1>{props.document}</h1>;
90
- });
91
- const component = renderer.create(
92
- <ConnectDocument store={store} document="default" />
93
- );
94
-
95
- // @ts-ignore
96
- const { props } = component.toTree().rendered;
97
-
98
- const { document, outputs } = props;
99
-
100
- expect({ document, outputs }).toStrictEqual({
101
- document: 'main',
102
- outputs: {
103
- 'output-5-0':
104
- '<p>Should output <strong>Variable 1</strong>&nbsp;My VAR1</p>\n',
105
- },
106
- });
107
- });
108
- });
@@ -1,64 +0,0 @@
1
- import {
2
- componentConnector,
3
- ConnectorStateToProps,
4
- } from "./connector/componentConnector";
5
- import { NumAuto } from "../libs/NumAuto";
6
- import { DocumentsOutputs } from "../libs/DocumentsOutputs";
7
- import { selectAllSectionsReferences } from "../redux/selectors/references";
8
-
9
- export type ConnectDocumentOwnProps = { document: string };
10
- export type ConnectDocumentMapProps = {
11
- document: string;
12
- outputs: Record<string, string>;
13
- };
14
-
15
- const stateToProps: ConnectorStateToProps<
16
- ConnectDocumentOwnProps,
17
- ConnectDocumentMapProps
18
- > = (selectors) => (state, ownProps) => {
19
- const {
20
- selectOptionConditionValue,
21
- selectSectionConditionValue,
22
- selectOptionInput,
23
- selectVariableInput,
24
- selectOptionReference,
25
- selectOutputReference,
26
- selectVariableReference,
27
- selectSectionReference,
28
- } = selectors;
29
-
30
- // Getting current document
31
- const document = ownProps.document === "default" ? "main" : ownProps.document;
32
-
33
- const documentOutputs = new DocumentsOutputs(
34
- {
35
- optionConditions: (id: number, index: number) =>
36
- selectOptionConditionValue(id, index),
37
- sectionConditions: (id: number, doc: string) =>
38
- selectSectionConditionValue(id, doc),
39
- optionInputs: (id: number) => selectOptionInput(id),
40
- variablesInputs: (id: number) => selectVariableInput(id),
41
- optionReference: (id: number) => selectOptionReference(id),
42
- outputReference: (id: number) => selectOutputReference(id),
43
- variableReference: (id: number) => selectVariableReference(id),
44
- sectionReference: (id: number) => selectSectionReference(id),
45
- documentSections: (doc: string) => selectAllSectionsReferences(doc),
46
- },
47
- document
48
- );
49
-
50
- const outputs = documentOutputs.getOutputs();
51
-
52
- // Reseting autonums
53
- NumAuto.resetNums();
54
-
55
- return {
56
- document,
57
- outputs,
58
- };
59
- };
60
-
61
- export const connectDocument = componentConnector({
62
- componentName: "Document",
63
- stateToProps,
64
- });
@@ -1,21 +0,0 @@
1
- import {
2
- componentConnector,
3
- ConnectorStateToProps,
4
- } from "./connector/componentConnector";
5
-
6
- export type ConnectHeaderOwnProps = { isPreviewDisplayed: boolean };
7
- export type ConnectHeaderMapProps = {
8
- hasValidAuthToken: boolean;
9
- };
10
-
11
- const stateToProps: ConnectorStateToProps<
12
- ConnectHeaderOwnProps,
13
- ConnectHeaderMapProps
14
- > = (selectors) => () => ({
15
- hasValidAuthToken: selectors.selectUserValidToken(),
16
- });
17
-
18
- export const connectHeader = componentConnector({
19
- componentName: "AppHeader",
20
- stateToProps,
21
- });
@@ -1,40 +0,0 @@
1
- import React from 'react';
2
- import renderer from 'react-test-renderer';
3
- import { StateType } from '../types/State.type';
4
- import { getStore, createAppStore } from '../redux/store';
5
- import { initMetaAction } from '../redux/actions/app';
6
-
7
- const meta: StateType.App.Meta = {
8
- title: 'My Test Document',
9
- id: 132,
10
- prefix: '',
11
- permalink: 'my-test-document',
12
- fetchStatus: 'succeeded',
13
- modelVersion: 1,
14
- productType: 'demarche',
15
- };
16
- describe('connectMetaTitle test suit', () => {
17
- let store: any;
18
- let connectMetaTitle: any;
19
- beforeEach(() => {
20
- createAppStore('memory');
21
- store = getStore();
22
- store.dispatch(initMetaAction(meta));
23
- // eslint-disable-next-line global-require
24
- connectMetaTitle = require('./connectMetaTitle').connectMetaTitle;
25
- });
26
-
27
- it('Should retrun props properly', () => {
28
- const ConnectMetaTitle = connectMetaTitle((props: any) => {
29
- return <h1>{props.title}</h1>;
30
- });
31
- const component = renderer.create(<ConnectMetaTitle store={store} />);
32
-
33
- // @ts-ignore
34
- const { props } = component.toTree().rendered;
35
-
36
- const { title } = props;
37
-
38
- expect({ title }).toStrictEqual({ title: 'My Test Document' });
39
- });
40
- });
@@ -1,8 +0,0 @@
1
- import { componentConnector } from "./connector/componentConnector";
2
-
3
- export const connectMetaTitle = componentConnector({
4
- componentName: "MetaTitle",
5
- stateToProps: (selectors) => () => ({
6
- title: selectors.selectDocumentTitle(),
7
- }),
8
- });