@tsed/react-formio 2.3.1 → 3.0.0-alpha.1

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 (339) hide show
  1. package/dist/chunks/index.js +45 -0
  2. package/dist/chunks/index.js.map +1 -0
  3. package/dist/components/actions-table/actionsTable.component.d.ts +10 -11
  4. package/dist/components/actions-table/actionsTable.component.js +53 -0
  5. package/dist/components/actions-table/actionsTable.component.js.map +1 -0
  6. package/dist/components/alert/alert.component.d.ts +5 -6
  7. package/dist/components/alert/alert.component.js +24 -0
  8. package/dist/components/alert/alert.component.js.map +1 -0
  9. package/dist/components/card/card.component.d.ts +6 -7
  10. package/dist/components/card/card.component.js +12 -0
  11. package/dist/components/card/card.component.js.map +1 -0
  12. package/dist/components/form/form.component.d.ts +62 -63
  13. package/dist/components/form/form.component.js +64 -0
  14. package/dist/components/form/form.component.js.map +1 -0
  15. package/dist/components/form/useForm.hook.d.ts +59 -60
  16. package/dist/components/form/useForm.hook.js +64 -0
  17. package/dist/components/form/useForm.hook.js.map +1 -0
  18. package/dist/components/form-access/formAccess.component.d.ts +9 -20
  19. package/dist/components/form-access/formAccess.component.js +95 -0
  20. package/dist/components/form-access/formAccess.component.js.map +1 -0
  21. package/dist/components/form-access/formAccess.schema.d.ts +5 -5
  22. package/dist/components/form-access/formAccess.schema.js +164 -0
  23. package/dist/components/form-access/formAccess.schema.js.map +1 -0
  24. package/dist/components/form-access/formAccess.utils.d.ts +24 -24
  25. package/dist/components/form-access/formAccess.utils.js +68 -0
  26. package/dist/components/form-access/formAccess.utils.js.map +1 -0
  27. package/dist/components/form-action/formAction.component.d.ts +9 -9
  28. package/dist/components/form-action/formAction.component.js +32 -0
  29. package/dist/components/form-action/formAction.component.js.map +1 -0
  30. package/dist/components/form-builder/formBuilder.component.d.ts +53 -53
  31. package/dist/components/form-builder/formBuilder.component.js +142 -0
  32. package/dist/components/form-builder/formBuilder.component.js.map +1 -0
  33. package/dist/components/form-control/formControl.component.d.ts +14 -22
  34. package/dist/components/form-control/formControl.component.js +26 -0
  35. package/dist/components/form-control/formControl.component.js.map +1 -0
  36. package/dist/components/form-edit/formCtas.component.d.ts +28 -28
  37. package/dist/components/form-edit/formCtas.component.js +70 -0
  38. package/dist/components/form-edit/formCtas.component.js.map +1 -0
  39. package/dist/components/form-edit/formEdit.component.d.ts +18 -19
  40. package/dist/components/form-edit/formEdit.component.js +57 -0
  41. package/dist/components/form-edit/formEdit.component.js.map +1 -0
  42. package/dist/components/form-edit/formEdit.reducer.d.ts +10 -10
  43. package/dist/components/form-edit/formEdit.reducer.js +65 -0
  44. package/dist/components/form-edit/formEdit.reducer.js.map +1 -0
  45. package/dist/components/form-edit/formParameters.component.d.ts +34 -34
  46. package/dist/components/form-edit/formParameters.component.js +92 -0
  47. package/dist/components/form-edit/formParameters.component.js.map +1 -0
  48. package/dist/components/form-edit/useFormEdit.hook.d.ts +29 -29
  49. package/dist/components/form-edit/useFormEdit.hook.js +36 -0
  50. package/dist/components/form-edit/useFormEdit.hook.js.map +1 -0
  51. package/dist/components/form-settings/formSettings.component.d.ts +7 -8
  52. package/dist/components/form-settings/formSettings.component.js +38 -0
  53. package/dist/components/form-settings/formSettings.component.js.map +1 -0
  54. package/dist/components/form-settings/formSettings.schema.d.ts +2 -2
  55. package/dist/components/form-settings/formSettings.schema.js +60 -0
  56. package/dist/components/form-settings/formSettings.schema.js.map +1 -0
  57. package/dist/components/form-settings/formSettings.utils.d.ts +8 -8
  58. package/dist/components/form-settings/formSettings.utils.js +23 -0
  59. package/dist/components/form-settings/formSettings.utils.js.map +1 -0
  60. package/dist/components/forms-table/components/formCell.component.d.ts +6 -7
  61. package/dist/components/forms-table/components/formCell.component.js +50 -0
  62. package/dist/components/forms-table/components/formCell.component.js.map +1 -0
  63. package/dist/components/forms-table/formsTable.component.d.ts +10 -11
  64. package/dist/components/forms-table/formsTable.component.js +29 -0
  65. package/dist/components/forms-table/formsTable.component.js.map +1 -0
  66. package/dist/components/index.d.ts +25 -26
  67. package/dist/components/index.js +86 -0
  68. package/dist/components/index.js.map +1 -0
  69. package/dist/components/input-tags/inputTags.component.d.ts +18 -19
  70. package/dist/components/input-tags/inputTags.component.js +37 -0
  71. package/dist/components/input-tags/inputTags.component.js.map +1 -0
  72. package/dist/components/input-text/inputText.component.d.ts +27 -28
  73. package/dist/components/input-text/inputText.component.js +70 -0
  74. package/dist/components/input-text/inputText.component.js.map +1 -0
  75. package/dist/components/loader/loader.component.d.ts +17 -17
  76. package/dist/components/loader/loader.component.js +26 -0
  77. package/dist/components/loader/loader.component.js.map +1 -0
  78. package/dist/components/modal/modal.component.d.ts +15 -15
  79. package/dist/components/modal/modal.component.js +62 -0
  80. package/dist/components/modal/modal.component.js.map +1 -0
  81. package/dist/components/modal/removeModal.component.d.ts +9 -9
  82. package/dist/components/modal/removeModal.component.js +71 -0
  83. package/dist/components/modal/removeModal.component.js.map +1 -0
  84. package/dist/components/pagination/pagination.component.d.ts +17 -18
  85. package/dist/components/pagination/pagination.component.js +87 -0
  86. package/dist/components/pagination/pagination.component.js.map +1 -0
  87. package/dist/components/select/select.component.d.ts +14 -27
  88. package/dist/components/select/select.component.js +60 -0
  89. package/dist/components/select/select.component.js.map +1 -0
  90. package/dist/components/submissions-table/submissionsTable.component.d.ts +6 -7
  91. package/dist/components/submissions-table/submissionsTable.component.js +11 -0
  92. package/dist/components/submissions-table/submissionsTable.component.js.map +1 -0
  93. package/dist/components/table/components/defaultArrowSort.component.d.ts +1 -2
  94. package/dist/components/table/components/defaultArrowSort.component.js +10 -0
  95. package/dist/components/table/components/defaultArrowSort.component.js.map +1 -0
  96. package/dist/components/table/components/defaultCell.component.d.ts +1 -2
  97. package/dist/components/table/components/defaultCell.component.js +11 -0
  98. package/dist/components/table/components/defaultCell.component.js.map +1 -0
  99. package/dist/components/table/components/defaultCellHeader.component.d.ts +5 -6
  100. package/dist/components/table/components/defaultCellHeader.component.js +14 -0
  101. package/dist/components/table/components/defaultCellHeader.component.js.map +1 -0
  102. package/dist/components/table/components/defaultCellOperations.component.d.ts +12 -2
  103. package/dist/components/table/components/defaultCellOperations.component.js +21 -0
  104. package/dist/components/table/components/defaultCellOperations.component.js.map +1 -0
  105. package/dist/components/table/components/defaultCells.component.d.ts +4 -5
  106. package/dist/components/table/components/defaultCells.component.js +23 -0
  107. package/dist/components/table/components/defaultCells.component.js.map +1 -0
  108. package/dist/components/table/components/defaultOperationButton.component.d.ts +15 -14
  109. package/dist/components/table/components/defaultOperationButton.component.js +45 -0
  110. package/dist/components/table/components/defaultOperationButton.component.js.map +1 -0
  111. package/dist/components/table/components/defaultRow.component.d.ts +12 -12
  112. package/dist/components/table/components/defaultRow.component.js +25 -0
  113. package/dist/components/table/components/defaultRow.component.js.map +1 -0
  114. package/dist/components/table/components/dragNDropContainer.d.ts +4 -4
  115. package/dist/components/table/components/dragNDropContainer.js +10 -0
  116. package/dist/components/table/components/dragNDropContainer.js.map +1 -0
  117. package/dist/components/table/filters/defaultColumnFilter.component.d.ts +5 -6
  118. package/dist/components/table/filters/defaultColumnFilter.component.js +32 -0
  119. package/dist/components/table/filters/defaultColumnFilter.component.js.map +1 -0
  120. package/dist/components/table/filters/selectColumnFilter.component.d.ts +10 -11
  121. package/dist/components/table/filters/selectColumnFilter.component.js +34 -0
  122. package/dist/components/table/filters/selectColumnFilter.component.js.map +1 -0
  123. package/dist/components/table/filters/sliderColumnFilter.component.d.ts +2 -3
  124. package/dist/components/table/filters/sliderColumnFilter.component.js +27 -0
  125. package/dist/components/table/filters/sliderColumnFilter.component.js.map +1 -0
  126. package/dist/components/table/hooks/useCustomTable.hook.d.ts +128 -128
  127. package/dist/components/table/hooks/useCustomTable.hook.js +130 -0
  128. package/dist/components/table/hooks/useCustomTable.hook.js.map +1 -0
  129. package/dist/components/table/hooks/useDragnDropRow.hook.d.ts +272 -274
  130. package/dist/components/table/hooks/useDragnDropRow.hook.js +40 -0
  131. package/dist/components/table/hooks/useDragnDropRow.hook.js.map +1 -0
  132. package/dist/components/table/hooks/useOperations.hook.d.ts +11 -11
  133. package/dist/components/table/hooks/useOperations.hook.js +25 -0
  134. package/dist/components/table/hooks/useOperations.hook.js.map +1 -0
  135. package/dist/components/table/index.d.ts +15 -15
  136. package/dist/components/table/index.js +35 -0
  137. package/dist/components/table/index.js.map +1 -0
  138. package/dist/components/table/table.component.d.ts +3 -3
  139. package/dist/components/table/table.component.js +81 -0
  140. package/dist/components/table/table.component.js.map +1 -0
  141. package/dist/components/table/utils/getPageNumbers.d.ts +3 -3
  142. package/dist/components/table/utils/getPageNumbers.js +25 -0
  143. package/dist/components/table/utils/getPageNumbers.js.map +1 -0
  144. package/dist/components/table/utils/mapFormToColumns.d.ts +3 -3
  145. package/dist/components/table/utils/mapFormToColumns.js +23 -0
  146. package/dist/components/table/utils/mapFormToColumns.js.map +1 -0
  147. package/dist/components/table/utils/swapElements.d.ts +1 -1
  148. package/dist/components/table/utils/swapElements.js +5 -0
  149. package/dist/components/table/utils/swapElements.js.map +1 -0
  150. package/dist/components/tabs/tabs.component.d.ts +19 -19
  151. package/dist/components/tabs/tabs.component.js +72 -0
  152. package/dist/components/tabs/tabs.component.js.map +1 -0
  153. package/dist/hooks/useTooltip.d.ts +2 -3
  154. package/dist/hooks/useTooltip.js +12 -0
  155. package/dist/hooks/useTooltip.js.map +1 -0
  156. package/dist/index.d.ts +13 -13
  157. package/dist/index.js +107 -7803
  158. package/dist/index.js.map +1 -1
  159. package/dist/interfaces/ActionSchema.d.ts +23 -23
  160. package/dist/interfaces/ActionSchema.js +2 -0
  161. package/dist/interfaces/ActionSchema.js.map +1 -0
  162. package/dist/interfaces/ColumnIdentifier.d.ts +14 -14
  163. package/dist/interfaces/ColumnIdentifier.js +2 -0
  164. package/dist/interfaces/ColumnIdentifier.js.map +1 -0
  165. package/dist/interfaces/FormOptions.d.ts +10 -10
  166. package/dist/interfaces/FormOptions.js +2 -0
  167. package/dist/interfaces/FormOptions.js.map +1 -0
  168. package/dist/interfaces/FormSchema.d.ts +12 -12
  169. package/dist/interfaces/FormSchema.js +2 -0
  170. package/dist/interfaces/FormSchema.js.map +1 -0
  171. package/dist/interfaces/Operation.d.ts +29 -29
  172. package/dist/interfaces/Operation.js +2 -0
  173. package/dist/interfaces/Operation.js.map +1 -0
  174. package/dist/interfaces/QueryOptions.d.ts +23 -23
  175. package/dist/interfaces/QueryOptions.js +2 -0
  176. package/dist/interfaces/QueryOptions.js.map +1 -0
  177. package/dist/interfaces/RoleSchema.d.ts +6 -6
  178. package/dist/interfaces/RoleSchema.js +2 -0
  179. package/dist/interfaces/RoleSchema.js.map +1 -0
  180. package/dist/interfaces/Submission.d.ts +5 -5
  181. package/dist/interfaces/Submission.js +2 -0
  182. package/dist/interfaces/Submission.js.map +1 -0
  183. package/dist/interfaces/index.d.ts +8 -8
  184. package/dist/interfaces/index.js +2 -0
  185. package/dist/interfaces/index.js.map +1 -0
  186. package/dist/react-app-env.d.js +2 -0
  187. package/dist/react-app-env.d.js.map +1 -0
  188. package/dist/react-table.d.js +2 -0
  189. package/dist/react-table.d.js.map +1 -0
  190. package/dist/typings.d.js +2 -0
  191. package/dist/typings.d.js.map +1 -0
  192. package/dist/utils/callLast.d.ts +1 -1
  193. package/dist/utils/callLast.js +10 -0
  194. package/dist/utils/callLast.js.map +1 -0
  195. package/dist/utils/getEventValue.d.ts +1 -1
  196. package/dist/utils/getEventValue.js +8 -0
  197. package/dist/utils/getEventValue.js.map +1 -0
  198. package/dist/utils/iconClass.d.ts +1 -1
  199. package/dist/utils/iconClass.js +9 -0
  200. package/dist/utils/iconClass.js.map +1 -0
  201. package/dist/utils/mapPagination.d.ts +1 -1
  202. package/dist/utils/mapPagination.js +11 -0
  203. package/dist/utils/mapPagination.js.map +1 -0
  204. package/dist/utils/stopPropagationWrapper.d.ts +1 -1
  205. package/dist/utils/stopPropagationWrapper.js +7 -0
  206. package/dist/utils/stopPropagationWrapper.js.map +1 -0
  207. package/package.json +28 -15
  208. package/src/components/__fixtures__/form-actions.json +240 -0
  209. package/src/components/actions-table/__fixtures__/data.json +12 -0
  210. package/src/components/actions-table/actionsTable.component.spec.tsx +47 -17
  211. package/src/components/actions-table/actionsTable.component.tsx +3 -2
  212. package/src/components/actions-table/actionsTable.stories.tsx +71 -289
  213. package/src/components/alert/alert.component.spec.tsx +0 -1
  214. package/src/components/alert/alert.component.tsx +0 -2
  215. package/src/components/alert/alert.stories.tsx +0 -2
  216. package/src/components/card/card.component.spec.tsx +0 -1
  217. package/src/components/card/card.component.tsx +1 -2
  218. package/src/components/card/card.stories.tsx +0 -2
  219. package/src/components/form/form.component.spec.tsx +1 -1
  220. package/src/components/form/form.component.tsx +0 -1
  221. package/src/components/form/form.stories.tsx +2 -3
  222. package/src/components/form-access/formAccess.component.tsx +2 -13
  223. package/src/components/form-access/formAccess.stories.tsx +55 -49
  224. package/src/components/form-action/formAction.component.tsx +2 -1
  225. package/src/components/form-action/formAction.stories.tsx +0 -2
  226. package/src/components/form-builder/formBuilder.component.tsx +4 -4
  227. package/src/components/form-builder/formBuilder.stories.tsx +0 -2
  228. package/src/components/form-control/formControl.component.spec.tsx +0 -1
  229. package/src/components/form-control/formControl.component.tsx +8 -15
  230. package/src/components/form-control/formControl.stories.tsx +0 -2
  231. package/src/components/form-edit/formCtas.component.tsx +1 -1
  232. package/src/components/form-edit/formEdit.component.tsx +0 -1
  233. package/src/components/form-edit/formEdit.reducer.ts +0 -1
  234. package/src/components/form-edit/formEdit.stories.tsx +0 -2
  235. package/src/components/form-edit/formParameters.component.tsx +1 -1
  236. package/src/components/form-settings/formSettings.component.spec.tsx +5 -6
  237. package/src/components/form-settings/formSettings.component.tsx +1 -1
  238. package/src/components/form-settings/formSettings.stories.tsx +0 -2
  239. package/src/components/forms-table/components/formCell.component.tsx +0 -1
  240. package/src/components/forms-table/formsTable.component.tsx +0 -2
  241. package/src/components/forms-table/formsTable.stories.tsx +0 -1
  242. package/src/components/index.ts +0 -1
  243. package/src/components/input-tags/inputTags.component.tsx +1 -1
  244. package/src/components/input-tags/inputTags.stories.tsx +1 -1
  245. package/src/components/input-text/inputText.component.spec.tsx +0 -1
  246. package/src/components/input-text/inputText.component.tsx +1 -1
  247. package/src/components/input-text/inputText.stories.tsx +1 -1
  248. package/src/components/loader/loader.component.spec.tsx +1 -1
  249. package/src/components/loader/loader.component.tsx +1 -1
  250. package/src/components/loader/loader.stories.tsx +0 -2
  251. package/src/components/modal/modal.component.spec.tsx +2 -5
  252. package/src/components/modal/modal.component.tsx +1 -1
  253. package/src/components/modal/modal.stories.tsx +0 -2
  254. package/src/components/modal/removeModal.component.tsx +1 -1
  255. package/src/components/pagination/pagination.component.spec.tsx +7 -10
  256. package/src/components/pagination/pagination.component.tsx +1 -1
  257. package/src/components/pagination/pagination.stories.tsx +1 -1
  258. package/src/components/select/select.component.spec.tsx +1 -2
  259. package/src/components/select/select.component.tsx +10 -23
  260. package/src/components/select/select.stories.tsx +1 -1
  261. package/src/components/submissions-table/submissionsTable.component.tsx +0 -2
  262. package/src/components/submissions-table/submissionsTable.stories.tsx +4 -4
  263. package/src/components/table/components/defaultArrowSort.component.tsx +0 -2
  264. package/src/components/table/components/defaultCell.component.tsx +0 -2
  265. package/src/components/table/components/defaultCellHeader.component.tsx +0 -1
  266. package/src/components/table/components/defaultCellOperations.component.tsx +16 -5
  267. package/src/components/table/components/defaultCells.component.tsx +0 -1
  268. package/src/components/table/components/defaultOperationButton.component.tsx +14 -4
  269. package/src/components/table/components/defaultRow.component.tsx +2 -1
  270. package/src/components/table/components/dragNDropContainer.tsx +1 -1
  271. package/src/components/table/filters/defaultColumnFilter.component.spec.tsx +2 -5
  272. package/src/components/table/filters/defaultColumnFilter.component.tsx +2 -1
  273. package/src/components/table/filters/selectColumnFilter.component.spec.tsx +3 -6
  274. package/src/components/table/filters/selectColumnFilter.component.tsx +0 -1
  275. package/src/components/table/filters/sliderColumnFilter.component.tsx +7 -10
  276. package/src/components/table/hooks/useCustomTable.hook.tsx +16 -20
  277. package/src/components/table/hooks/useOperations.hook.tsx +3 -3
  278. package/src/components/table/table.component.tsx +1 -1
  279. package/src/components/table/table.stories.tsx +8 -8
  280. package/src/components/table/utils/mapFormToColumns.tsx +0 -1
  281. package/src/components/tabs/tabs.component.spec.tsx +2 -2
  282. package/src/components/tabs/tabs.component.stories.tsx +1 -1
  283. package/src/components/tabs/tabs.component.tsx +1 -1
  284. package/src/react-table.d.ts +2 -0
  285. package/src/utils/iconClass.ts +3 -1
  286. package/tsconfig.app.json +11 -0
  287. package/tsconfig.json +8 -6
  288. package/tsconfig.spec.json +14 -0
  289. package/vite.config.mts +69 -0
  290. package/vitest.config.mts +21 -0
  291. package/.eslintignore +0 -13
  292. package/.eslintrc.js +0 -7
  293. package/coverage.json +0 -6
  294. package/dist/components/actions-table/actionsTable.component.spec.d.ts +0 -1
  295. package/dist/components/actions-table/actionsTable.stories.d.ts +0 -85
  296. package/dist/components/alert/alert.component.spec.d.ts +0 -1
  297. package/dist/components/alert/alert.stories.d.ts +0 -15
  298. package/dist/components/card/card.component.spec.d.ts +0 -1
  299. package/dist/components/card/card.stories.d.ts +0 -16
  300. package/dist/components/form/form.component.spec.d.ts +0 -1
  301. package/dist/components/form/form.stories.d.ts +0 -6445
  302. package/dist/components/form-access/formAccess.stories.d.ts +0 -62
  303. package/dist/components/form-access/formAccess.utils.spec.d.ts +0 -1
  304. package/dist/components/form-action/formAction.stories.d.ts +0 -409
  305. package/dist/components/form-builder/formBuilder.stories.d.ts +0 -5989
  306. package/dist/components/form-control/formControl.component.spec.d.ts +0 -1
  307. package/dist/components/form-control/formControl.stories.d.ts +0 -58
  308. package/dist/components/form-edit/formEdit.stories.d.ts +0 -396
  309. package/dist/components/form-settings/formSettings.component.spec.d.ts +0 -1
  310. package/dist/components/form-settings/formSettings.stories.d.ts +0 -58
  311. package/dist/components/form-settings/formSettings.utils.spec.d.ts +0 -1
  312. package/dist/components/forms-table/formsTable.stories.d.ts +0 -117
  313. package/dist/components/input-tags/inputTags.stories.d.ts +0 -76
  314. package/dist/components/input-text/inputText.component.spec.d.ts +0 -1
  315. package/dist/components/input-text/inputText.stories.d.ts +0 -101
  316. package/dist/components/loader/loader.component.spec.d.ts +0 -1
  317. package/dist/components/loader/loader.stories.d.ts +0 -15
  318. package/dist/components/modal/modal.component.spec.d.ts +0 -1
  319. package/dist/components/modal/modal.stories.d.ts +0 -44
  320. package/dist/components/pagination/pagination.component.spec.d.ts +0 -1
  321. package/dist/components/pagination/pagination.stories.d.ts +0 -16
  322. package/dist/components/react-component/reactComponent.component.d.ts +0 -90
  323. package/dist/components/select/select.component.spec.d.ts +0 -1
  324. package/dist/components/select/select.stories.d.ts +0 -164
  325. package/dist/components/submissions-table/submissionsTable.stories.d.ts +0 -649
  326. package/dist/components/table/filters/defaultColumnFilter.component.spec.d.ts +0 -1
  327. package/dist/components/table/filters/selectColumnFilter.component.spec.d.ts +0 -1
  328. package/dist/components/table/table.stories.d.ts +0 -71
  329. package/dist/components/table/utils/swapElements.spec.d.ts +0 -1
  330. package/dist/components/tabs/tabs.component.spec.d.ts +0 -1
  331. package/dist/components/tabs/tabs.component.stories.d.ts +0 -47
  332. package/dist/index.modern.js +0 -7453
  333. package/dist/index.modern.js.map +0 -1
  334. package/dist/package.json +0 -3
  335. package/dist/setupTests.d.ts +0 -1
  336. package/jest.config.js +0 -6
  337. package/src/components/react-component/reactComponent.component.tsx +0 -197
  338. package/src/setupTests.tsx +0 -5
  339. package/tsconfig.node.json +0 -8
@@ -0,0 +1,240 @@
1
+ [
2
+ {
3
+ "name": "webhook",
4
+ "title": "Webhook (Premium)",
5
+ "description": "Allows you to trigger an external interface.",
6
+ "priority": 0,
7
+ "defaults": {
8
+ "handler": ["after"],
9
+ "method": ["create", "update", "delete"],
10
+ "priority": 0,
11
+ "name": "webhook",
12
+ "title": "Webhook (Premium)"
13
+ },
14
+ "premium": true
15
+ },
16
+ {
17
+ "name": "sql",
18
+ "title": "SQL Query",
19
+ "description": "Allows you to execute a remote SQL Query.",
20
+ "priority": 0,
21
+ "defaults": {
22
+ "handler": ["after"],
23
+ "method": ["create"],
24
+ "priority": 0,
25
+ "name": "sql",
26
+ "title": "SQL Query"
27
+ }
28
+ },
29
+ {
30
+ "name": "role",
31
+ "title": "Role Assignment",
32
+ "description": "Provides the Role Assignment capabilities.",
33
+ "priority": 1,
34
+ "defaults": {
35
+ "handler": ["after"],
36
+ "method": ["create"],
37
+ "priority": 1,
38
+ "name": "role",
39
+ "title": "Role Assignment"
40
+ },
41
+ "access": {
42
+ "handler": false,
43
+ "method": false
44
+ }
45
+ },
46
+ {
47
+ "name": "resetpass",
48
+ "title": "Reset Password",
49
+ "description": "Provides a way to reset a password field.",
50
+ "defaults": {
51
+ "handler": ["after", "before"],
52
+ "method": ["form", "create"],
53
+ "priority": 0,
54
+ "name": "resetpass",
55
+ "title": "Reset Password"
56
+ },
57
+ "access": {
58
+ "handler": false,
59
+ "method": false
60
+ }
61
+ },
62
+ {
63
+ "name": "save",
64
+ "title": "Save Submission",
65
+ "description": "Saves the submission into the database.",
66
+ "priority": 10,
67
+ "defaults": {
68
+ "handler": ["before"],
69
+ "method": ["create", "update"],
70
+ "priority": 10,
71
+ "name": "save",
72
+ "title": "Save Submission"
73
+ },
74
+ "access": {
75
+ "handler": false,
76
+ "method": false
77
+ }
78
+ },
79
+ {
80
+ "name": "login",
81
+ "title": "Login",
82
+ "description": "Provides a way to login to the application.",
83
+ "priority": 2,
84
+ "defaults": {
85
+ "handler": ["before"],
86
+ "method": ["create"],
87
+ "priority": 2,
88
+ "name": "login",
89
+ "title": "Login"
90
+ },
91
+ "access": {
92
+ "handler": false,
93
+ "method": false
94
+ }
95
+ },
96
+ {
97
+ "name": "office365contact",
98
+ "title": "Office 365 Contacts (Premium)",
99
+ "description": "Allows you to integrate into your Office 365 Contacts.",
100
+ "priority": 0,
101
+ "defaults": {
102
+ "handler": ["after"],
103
+ "method": ["create", "update", "delete"],
104
+ "priority": 0,
105
+ "name": "office365contact",
106
+ "title": "Office 365 Contacts (Premium)"
107
+ },
108
+ "premium": true
109
+ },
110
+ {
111
+ "name": "office365calendar",
112
+ "title": "Office 365 Calendar (Premium)",
113
+ "description": "Allows you to integrate into your Office 365 Calendar.",
114
+ "premium": true,
115
+ "priority": 0,
116
+ "defaults": {
117
+ "handler": ["after"],
118
+ "method": ["create", "update", "delete"],
119
+ "priority": 0,
120
+ "name": "office365calendar",
121
+ "title": "Office 365 Calendar (Premium)"
122
+ }
123
+ },
124
+ {
125
+ "name": "hubspotContact",
126
+ "title": "Hubspot Contact (Premium)",
127
+ "description": "Allows you to change contact fields in hubspot.",
128
+ "priority": 0,
129
+ "defaults": {
130
+ "handler": ["after"],
131
+ "method": ["create"],
132
+ "priority": 0,
133
+ "name": "hubspotContact",
134
+ "title": "Hubspot Contact (Premium)"
135
+ },
136
+ "premium": true
137
+ },
138
+ {
139
+ "name": "oauth",
140
+ "title": "OAuth (Premium)",
141
+ "description": "Provides OAuth authentication behavior to this form.",
142
+ "priority": 20,
143
+ "defaults": {
144
+ "handler": ["after"],
145
+ "method": ["form", "create"],
146
+ "priority": 20,
147
+ "name": "oauth",
148
+ "title": "OAuth (Premium)"
149
+ },
150
+ "premium": true
151
+ },
152
+ {
153
+ "name": "ldap",
154
+ "title": "LDAP Login (Premium)",
155
+ "description": "Provides ldap login.",
156
+ "priority": 3,
157
+ "defaults": {
158
+ "handler": ["before"],
159
+ "method": ["create"],
160
+ "priority": 3,
161
+ "name": "ldap",
162
+ "title": "LDAP Login (Premium)"
163
+ },
164
+ "premium": true
165
+ },
166
+ {
167
+ "name": "googlesheet",
168
+ "title": "Google Sheets (Premium)",
169
+ "description": "Allows you to integrate data into Google sheets.",
170
+ "priority": 0,
171
+ "defaults": {
172
+ "handler": ["after"],
173
+ "method": ["create", "update", "delete"],
174
+ "priority": 0,
175
+ "name": "googlesheet",
176
+ "title": "Google Sheets (Premium)"
177
+ },
178
+ "premium": true
179
+ },
180
+ {
181
+ "name": "sqlconnector",
182
+ "title": "SQL Connector (Premium)",
183
+ "description": "Allows you to execute a remote SQL Query via Resquel.",
184
+ "priority": 0,
185
+ "defaults": {
186
+ "handler": ["after"],
187
+ "method": ["create", "update", "delete"],
188
+ "priority": 0,
189
+ "name": "sqlconnector",
190
+ "title": "SQL Connector (Premium)"
191
+ },
192
+ "premium": true
193
+ },
194
+ {
195
+ "name": "jira",
196
+ "title": "Jira (Premium)",
197
+ "description": "Allows you to create issues within Jira.",
198
+ "priority": 0,
199
+ "defaults": {
200
+ "handler": ["after"],
201
+ "method": ["create", "update", "delete"],
202
+ "priority": 0,
203
+ "name": "jira",
204
+ "title": "Jira (Premium)"
205
+ },
206
+ "premium": true
207
+ },
208
+ {
209
+ "name": "group",
210
+ "title": "Group Assignment (Premium)",
211
+ "premium": true,
212
+ "description": "Provides the Group Assignment capabilities.",
213
+ "priority": 5,
214
+ "defaults": {
215
+ "handler": ["after"],
216
+ "method": ["create", "update", "delete"],
217
+ "priority": 5,
218
+ "name": "group",
219
+ "title": "Group Assignment (Premium)"
220
+ },
221
+ "access": {
222
+ "handler": false,
223
+ "method": false
224
+ }
225
+ },
226
+ {
227
+ "name": "twilioSMS",
228
+ "title": "Twilio SMS (Premium)",
229
+ "premium": true,
230
+ "description": "Allows you to send SMS to phone numbers.",
231
+ "priority": 0,
232
+ "defaults": {
233
+ "handler": ["after"],
234
+ "method": ["create"],
235
+ "priority": 0,
236
+ "name": "twilioSMS",
237
+ "title": "Twilio SMS (Premium)"
238
+ }
239
+ }
240
+ ]
@@ -0,0 +1,12 @@
1
+ [
2
+ {
3
+ "_id": "602967600685b2158b24e99a",
4
+ "handler": ["before"],
5
+ "method": ["create", "update"],
6
+ "priority": 10,
7
+ "name": "save",
8
+ "title": "Save Submission",
9
+ "form": "602967600685b24dbe24e999",
10
+ "machineName": "tcspjwhsevrzpcd:testForm:save"
11
+ }
12
+ ]
@@ -1,50 +1,80 @@
1
1
  import { fireEvent, render, screen } from "@testing-library/react";
2
2
  import userEvent from "@testing-library/user-event";
3
- import React from "react";
4
3
 
5
- import { Sandbox } from "./actionsTable.stories";
4
+ import availableActions from "../__fixtures__/form-actions.json";
5
+ import data from "./__fixtures__/data.json";
6
+ import { ActionsTable } from "./actionsTable.component";
7
+
8
+ const args: any = {
9
+ data: data,
10
+ availableActions: availableActions.map(({ name, title }) => ({
11
+ label: title,
12
+ value: name
13
+ })),
14
+ operations: [
15
+ {
16
+ title: "Edit",
17
+ action: "edit",
18
+ alias: "row",
19
+ path: "/resources/:resourceId/submissions/:submissionId",
20
+ icon: "edit",
21
+ permissionsResolver() {
22
+ return true;
23
+ }
24
+ },
25
+ {
26
+ action: "delete",
27
+ path: "/resources/:resourceId/submissions/:submissionId/delete",
28
+ icon: "trash",
29
+ buttonType: "danger",
30
+ permissionsResolver() {
31
+ return true;
32
+ }
33
+ }
34
+ ]
35
+ };
6
36
 
7
37
  describe("ActionsTable", () => {
8
38
  it("should render the table actions", async () => {
9
- const onAddAction = jest.fn();
39
+ const onAddAction = vi.fn();
10
40
 
11
- render(<Sandbox {...Sandbox.args} onAddAction={onAddAction} />);
41
+ render(<ActionsTable {...args} onAddAction={onAddAction} />);
12
42
 
13
- const btn = screen.getByRole("button", { name: /add action/i });
43
+ const btn = screen.getByTestId("action-table-add");
14
44
  const cells = screen.getAllByRole("cell");
15
45
  const options = screen.getAllByRole("option");
16
46
 
17
47
  expect(btn).toHaveProperty("disabled");
18
48
  expect(btn.innerHTML).toMatch("Add action");
19
49
  expect(cells[0].innerHTML).toMatch("Save Submission");
20
- expect(options.length).toEqual(Sandbox.args.availableActions.length + 1);
50
+ expect(options.length).toEqual(availableActions.length + 1);
21
51
 
22
52
  expect(options[0].innerHTML).toMatch("Select an action");
23
- expect(options[1].innerHTML).toMatch("Email");
53
+ expect(options[1].innerHTML).toMatch("Webhook (Premium)");
24
54
  });
25
55
  it("should not call addAction when the default item is selected", async () => {
26
- const onAddAction = jest.fn();
56
+ const onAddAction = vi.fn();
27
57
 
28
- render(<Sandbox {...Sandbox.args} onAddAction={onAddAction} />);
58
+ render(<ActionsTable {...args} onAddAction={onAddAction} />);
29
59
 
30
- const btn = screen.getByRole("button", { name: /add action/i });
60
+ const btn = screen.getByTestId("action-table-add");
31
61
 
32
- await fireEvent.click(btn);
62
+ fireEvent.click(btn);
33
63
  expect(onAddAction).not.toHaveBeenCalled();
34
64
  });
35
65
  it("should call addAction with the selected action", async () => {
36
- const onAddAction = jest.fn();
66
+ const onAddAction = vi.fn();
37
67
 
38
- render(<Sandbox {...Sandbox.args} onAddAction={onAddAction} />);
68
+ render(<ActionsTable {...args} onAddAction={onAddAction} />);
39
69
 
40
- const btn = screen.getByRole("button", { name: /add action/i });
70
+ const btn = screen.getByTestId("action-table-add");
41
71
  const select = screen.getByRole("combobox");
42
72
 
43
- await userEvent.selectOptions(select, String(Sandbox.args.availableActions[1].value));
73
+ await userEvent.selectOptions(select, String(args.availableActions[1].value));
44
74
 
45
- await fireEvent.click(btn);
75
+ fireEvent.click(btn);
46
76
 
47
77
  expect(btn).not.toHaveProperty("disabled", true);
48
- expect(onAddAction).toHaveBeenCalledWith("webhook");
78
+ expect(onAddAction).toHaveBeenCalledWith("sql");
49
79
  });
50
80
  });
@@ -1,6 +1,6 @@
1
1
  import classnames from "classnames";
2
2
  import noop from "lodash/noop";
3
- import React, { useState } from "react";
3
+ import { useState } from "react";
4
4
 
5
5
  import { ActionSchema } from "../../interfaces";
6
6
  import { iconClass } from "../../utils/iconClass";
@@ -35,6 +35,7 @@ export function ActionsTable({
35
35
  <Table {...props} disableFilters={disableFilters} disablePagination={disablePagination} columns={columns}>
36
36
  <div className={"pagination-group"}>
37
37
  <Select
38
+ data-testid={"action-table-select"}
38
39
  name={"actions"}
39
40
  value={currentAction}
40
41
  choices={[{ label: i18n("Select an action"), value: "" }].concat(availableActions)}
@@ -42,7 +43,7 @@ export function ActionsTable({
42
43
  />
43
44
  <div className={"pl-3"}>
44
45
  <button
45
- data-testid={"submit"}
46
+ data-testid={"action-table-add"}
46
47
  disabled={currentAction === ""}
47
48
  className={"btn btn-success"}
48
49
  onClick={() => currentAction && onAddAction(currentAction)}